본문 바로가기

개발/내일배움캠프

01/30 Fap써보기, 에셋 다뤄보기

 

 

https://www.fab.com/ko/

 

Fab은 에픽스토어에서 제공하는 에셋 스토어로, 주로 언리얼 에셋을 다루지만 유니티, UEFN(포트나이트), 메타휴먼 에셋들도 추가로 취급한다.

Fab의 언리얼 채널 메인페이지.

3d에셋부터 머터리얼, 스프라이트, 등등 다양한 종류의 에셋을 다루며

원하는 제품을 선택하여 내 라이브러리에 추가 또는 구매하여 내 프로젝트에서 사용할 수 있다.

 

에픽게임즈에서 공식제공하는 에셋도 여기있다.

구매 또는 추가한 에셋은 내 라이브러리에서 확인 할 수 있다.

라이브러리에 추가되었다면 내 에픽게임즈-언리얼엔진 하단의 팹 라이브러리에서 확인 가능하다.

Online Learning Kit의 경우 튜토리얼 패키지라 바로 프로젝트 생성이 가능하고, 에셋인 Lower Sector building Kit의 경우 프로젝트에 추가가 활성화 되어 있다.

 

언리얼은 하위버전을 상위버전으로 마이그레이션은 가능하지만 반대는 불가능하다.

그러니 사용할 때 내가 사용하는 버전과 같은지와 에셋이 하위버전이라면 마이그레이션 했을때 정상 작동하는지 확인해야할듯.

 

강의에 사용하는 Lower Sector Building Kit이 5.4버전용이었는데, 이 경우 언리얼 5.4버전을 설치하고 임포트 후 5.5버전으로 변경하는 방법으로 상위 버전에서 사용할 수 있다고 함.

(강의에서는 이미 5.5버전으로 된 파일을 압축하여 제공한것으로 보임)

 

Actor(엑터)

언리얼에서 레벨내 기능이 존재하는 모든 오브젝트의 기반 클래스
존재하는것만으로도 기능이라고 함...

 

엑터는 고유한 컴포넌트를 지니고

위치,회전, 스케일(크기)등 Transform(변환)정보를 가지고 있음.

 

기본엑터 중 라이트유형5종 알아보기 

공식 설명(과 예시?)

디렉셔널 라이트(Directional Lights) 는 주요 야외 라이트 또는 굉장히 멀거나 거의 무한히 떨어진 거리에서 드리워지는 것으로 보이는 라이트입니다.(태양빛)
스카이 라이트(Sky Light) 는 씬의 배경을 캡처하여 레벨의 지오메트리에 적용합니다.(전체적인 밝기)
포인트 라이트(Point Lights) 는 전구처럼 작동하며 단일 포인트에서 모든 방향으로 라이트를 드리웁니다.
스포트 라이트(Spot Lights) 는 단일 포인트에서 원뿔 세트에 의해 제한된 방향으로 라이트를 발산합니다. (손전등)
렉트 라이트(Rect Lights) 는 사각형 표면에서 한 방향으로 라이트를 발산합니다. (천장 조명?)

 

스태틱 메시 엑터?

3D 메시를 표시하는 단순한 타입의 액터이며, 이름의 static은 움직일 수 없는게 아닌 정적인 메시를 가졋다는 의미임.

 

폰, 캐릭터
Pawn과 Charactor는 Controller에 의해 제어되는 유형의 엑터이며

Pawn은 Ai나 플레이어의 Controller에 의해 움직임을 제어받는정도이면
Character 는 Pawn에서 확장되어 스켈레탈메쉬 컴포넌트, 캡슐컴포넌트, 캐릭터무브셋 컴포넌트 등을 받아 기능이 확장된 기본형태로 예를들면 걷기, 달리기, 점프, 비행, 수영등의 행동이 가능한 형태임.

 

볼륨(Volume)액터?

3차원 내 "공간"을 정의하여 이펙트와 동작, 이벤트 트리거 등을 구현하는데 사용

예시)

  • 볼륨 내 다른 액터(플레이어 등)에 데미지를 입힘
  • 콜리전 표면을 구성하여 들어가는것을 차단(투명 벽)
  • 문을 여는 등의 환경을 변경, 라이팅이나 비저빌리티 변경(이벤트 트리거)

오늘의퀘스트

에셋 다운로드 및 커스터마이징 실습

목표: 외부에서 에셋을 다운로드 받아 프로젝트에 적용하고, 위치/스케일 등을 조정해 씬에 통합합니다.

 

[Step 1] Fab 플러그인 사용 및 로그인

[Step 2] 에셋 검색 및 라이브러리 추가

[Step 3] 에셋 프로젝트에 임포트

[Step 4] 에셋 배치 및 조정

[Step 5] 폴더 구조 정리

순으로 진행해보기.

 

Fab은 웹페이지를 통해 진행할 수도 있지만, 에픽게임즈 런쳐를 통해 접근도 가능하다.

보통 로그인도 해두었을것이기 때문에 편하지만 반응이 좀 느린듯

간단하게 추가해 볼 수 있는 3d에셋을 찾기위해 언리얼채널-3D-툴, 오브젝트 및 장식을 선택하고 필터링에서 무료 선택

추가로, 현재 다운로드 받은 다른 버전의 언리얼엔진이 없으므로, 간단한 사용을 위해 호환성에서 5.5버전만을 선택한다.

5.5버전 무료 에셋들

무난해보이는 에셋을 선택하여 라이브러리에 추가, 선택한 에셋은 Furniture FREE - Low Poly 3D Models Pack 이름의 에셋.

내 라이브러리에 추가된것 확인.

 

이제 빈 프로젝트를 생성하고, 에셋을 프로젝트에 추가한다

내 경우 Asset_Test 프로젝트를 먼저 생성하고, 런처에서 에셋을 프로젝트에 추가하였음.

프로젝트 내 컨텐츠 드로어에 Funiture_Free폴더가 추가된것을 확인할 수 있었음.

추가로, 해당 폴더 내에는 Maps폴더에 Overview이름의 레벨이 있어 모든 에셋을 볼 수 있었음.

Overview 레벨을 열어 실행해본 모습

 

다시 빈 레벨로 돌아와서 배치 및 조정을 진행해보도록 함.

과제 내용은 3가지로 다음과 같음.

  • 씬에 에셋 배치
  • 이동, 회전, 크기조정(Transform Tool)기능으로 위치 정리
  • Collision(충돌)설정 확인.

에셋 배치는 간단하게 컨텐츠 드로어에서 드래그 드랍으로 쉽게 가능함.

일단 바닥에 아무렇게나 생성해둔 에셋들

배치하는것은 문제가 없다.

위치조정과 충돌을 확인해보기위해  책상을 불러오고 책상위에 화분,아령 등 작은 에셋들을 올려보았다.

아무런 설정없이 올려놓으니 물체가 겹치는등 부자연스러운것을 확인.

 

 

기즈모를 통해 위치를 조정하고, 디테일 패널에서 중력과 피직스 시뮬레이트를 체크를 하고 다시 실행해보니

둥둥떠잇는 에셋들

 

체크를 해도 물리효과가 적용 되지않는다

문제는 ComplexAsSimple 콜리전이 존재하기 때문이라는데...

 

아직 관련 지식이 없어 AI에게 물어보니 복잡한 메쉬에 적절한 세팅이라는데 지금은 다 구현해놓고 올려놓는게 보고싶으니 해결책에 집중한다.

스태틱 매쉬 설정에서 Collision Complexity를 "Project Default" 또는 "Use Simple Collision as Complex"로 변경 후, 기본 콜리전 사용하라고 한다.

 

컨텐츠 드로어에서 받은 에셋을 더블클릭하여 스태틱 메시 에디터를 열고, 디테일 패널-콜리전-콜리전 복잡도를
Use Complex Collision As Simple에서 Project Default로 변경.

레벨 에디터말고 스태틱 메시 에디터의 디테일 패널에서만 보이니 주의

책상위에 떨어뜨릴 에셋들의 콜리전 복잡도를 변경하고, 추가된 액터의 피직스 시뮬레이트와 중력을 활성화하고.

마지막으로 테스트를 위해 책상위 액터를 약간 공중의 띄워놓은후 실행

동영상 서비스가 종료되어 해당 콘텐츠를 재생할 수 없습니다.

잘 떨어진다. 

 

과제 마지막 스탭은 폴더 구조정리

1. 콘텐츠 브라우저에서 MyAsset폴더 생성 후 에셋 이동

2. 폴더 구조를 깔끔하게 정돈

그냥 폴더 만들고 옮겻다.

이동시 Level파일 경로 관련해서 주의가 뜨는데 이부분은 나중에 알아보게 되지않을까...

 


진행하며 느낀 점, 개선하고 싶은 점...

에셋 하나를 사용하기 위한 구조가 생각보다 더 복잡하다. 속성별 에디터에서 설정이 따로있고, 액터로서 설정이 또 따로있고..

어디에 어떤 기능이 있는지를 파악해야 용이할것

UI먼저 익숙해져야지 뭔가 기능을 찾는데 한세월이다

 

 

에셋을 구경하다 본 흥미로운점은 각 에셋들에 사용된 마테리얼이 하나라는점인데

어떻게 설정이 되었길래 이 마테리얼이 적용되어서 

이런 구조가 표현이 되는건지가 궁금하긴하다.