https://learn.unrealengine.com/course/3754783
Epic Games
www.unrealengine.com
1. 언리얼엔진 5 소개
"이 첫 강좌에서 Matt이 에픽게임즈 런처를 사용하여 언리얼 엔진 버전을 설치 및 관리하고, 프로젝트를 열고, 마켓플레이스 콘텐츠를 받고, 무료 학습 콘텐츠에 액세스하는 방법을 보여줍니다."
- 예제파일 다운로드 코드를 에픽게임즈 내 계정으로 들어가 코드입력으로 다운받으면, 에픽런쳐에서 언리얼로 가면 밑에 VAULT부분에 보이게 된다. 거기서 다운받으면 됨.
- UE5 얼리액세스 설치 : 설치옵션에 시작컨텐츠 포함하는 게 나음, 엔진소스 옵션은 C++프로그래밍할 때 유리함. IOS 나 안드로이드 같은 옵션은 필요할 때만 체크할 것.
- UE를 삭제하더라도 작업하던 프로젝트는 삭제되지 않으니 걱정말 것.
2. 코드교환방법
- 이 영상 보면 더 헷갈리게 된다. 그냥 에픽게임즈 홈페이지에 내 계정으로 가서 코드입력하면 된다.
3. 프로젝트 브라우저 사용하기
"Matt이 언리얼 엔진 프로젝트 브라우저를 통해 템플릿을 사용하고 프로젝트로 작업하는 방법을 소개합니다. 템플릿은 게임, 영화 및 방송, 건축 시각화 같은 다양한 카테고리로 분류되어 있으며, 작업을 빠르게 시작할 수 있게 디자인된 여러 옵션을 제공합니다."
- 언리얼엔진5를 실행하면 아래와 같은 '프로젝트 브라우저'가 나온다.
- 게임/VR 템플릿이 대단한게 핸드 기능이 처음부터 잘 작동하게 되어있는데다 기본적인 로코모션까지 구성되어 있음.
↑ 로코모션은 요런거다
- 프로젝트 옵션들을 보면
오른쪽에 블루프린트나 C++을 선택할 수 있는데 C++을 선택하면 진행하기 전에 비주얼 스튜디오 2019를 깔라는 오류메세지가 나올 수 있음.(비주얼 스튜디오가 안깔렸는 상태인 경우)
타겟플랫폼은 데스크탑이냐 모바일이냐를 선택할 수 있고, 퀄리티 프리셋은 맥시멈과 스케일러블 두 가지 선택이 가능하다. 시작용컨텐츠에는 유용한 애셋들이 있으므로 선택하는 것이 좋다.
- 프로젝트 이름은 숫자로 시작할 수 없고 영문자로 시작할 수 있다. 기타 쓸 수 없는 것들이 있는데 그때마다 경고메세지가 나오니까 참고하면 된다.
- 건축, 엔지니어링 및 건설 탭으로 가면 우측에 옵션에 블루프린트나 C++ 옵션이 사라져 있다. 이건 이 프로젝트가 이렇게 특별한 용도로만 디자인되었기 때문임.
- 건축시각화로 프로젝트이름은 Intro로 만들어본다
- 편집(Edit) / 프로젝트 세팅 으로 가서 타겟 하드웨어 쪽에서 아까 설정한 것들을 수정할 수 있다.
- 컨텐츠 브라우저가 나오게 설정하려면 창 / 컨텐츠브라우저 / 컨텐츠 브라우저 1 을 선택하면 아래와 같이 컨텐츠 브라우저가 하단에 나타난다. 혹시 도킹이 안된채로 가운데 나타난다면 컨텐츠브라우저 창을 마우스로 드래그 해서 아래로 끌고와 하단에 도킹시키면 된다.
4. 프로젝트 저장 및 로드하기
"에디터에서 프로젝트를 사용하여 작업하는 방법을 알아봅니다. 프로젝트의 기본 레이아웃을 학습하고, 변경 사항을 파악하고 에셋에 저장하는 방법을 이해하며, 나중에 사용할 프로젝트를 리로드합니다."
- 콘텐츠 브라우저에서 '콘텐츠'에 마우스 오른쪽 클릭해서 '탐색기에서 보기'를 선택하면 이 프로젝트의 컨텐츠(Content)폴더로 탐색기가 열린다.
- 프로젝트가 저장되어 있는 폴더로 가보면 Config 폴더가 있다. 여기에는 각종 설정들이 저장되어 있는 곳이다.
- Content폴더에 ArchvisProject폴더로 가보면 Blueprints,Geometry,Levels,Materials 등의 폴더들이 있는데, 이는 컨텐츠 브라우저의 폴더 트리 구성과 똑같다.
- UE5에서 뭘 수정하더라도 자동으로 즉시 저장되지 않는다. UE5을 닫을 때 저장할 거냐고 물어본다. 그리고 업데이트 되는 부분들이 항목별로 표시가 된다.
- 그러면 저장이 필요한 부분은 어떻게 알 수 있을까? 즉 내가 그동안 뭘 수정했는지 어떻게 알 수 있을까? 저장이 필요한 모든 데이터에는 '*' 별표표시가 붙는다. 뭘 수정하면 별표가 붙어서 저장이 필요한 부분이라고 알려준다.
- 저장은 컨텐츠 브라우저에서 "모두 저장"을 누르거나 파일 메뉴에서 저장을 할 수도 있다.
- 프로그램을 닫고 프로젝트 파일을 더블클릭하는 것으로 열 수도 있다. (그때 UE의 어떤 버전으로 열지 물어본다.)
5. 에디터 이해하기
"'디테일' 패널을 비롯해 가장 자주 사용되는 창은 어떤 것이 있으며 에디터를 커스터마이징하는 방법 등 에디터에서 제공하는 툴과 환경설정에 대해 자세하게 알아봅니다."
- 좌측 사이드바로 '액터 배치' 를 넣고 싶으면 (처음에는 사이드바가 아무것도 없다), 상단 메뉴에서 창/액터배치 를 누르면 나타난다. 액터배치라는 탭 제목에 마우스우클릭하고 '사이드바로 이동'을 누르면 사이드바로 최소화된다. 이렇게 되면 사이드바를 발동을 시키고 거기에 액터배치 라는 기능 하나를 넣어놓은 것이 된다.
- 우측의 '월드 아웃라이너' 위치도 마음에 들지 않으면 사이드바로 이동시켜서 최소화시킬 수 있다.
- 컨텐츠 브라우저를 여러개 띄워 놓을 수도 있다. 상단메뉴에서 창/컨텐츠브라우저/컨텐츠브라우즈2 를 누르면 됨.
- 레이아웃 저장도 가능한데, 상단 메뉴에 창 / 레이아웃 저장 에서 가능.
6. 에셋 생성하기
"에셋이란 머티리얼, 비트맵 이미지(텍스처), 블루프린트(그래픽 환경을 통한 프로그래밍을 지원하는 에셋), 3D 메시(스태틱 메시)를 포함하여 프로젝트에서 사용되는 모든 것을 가리킵니다. 이 강좌에서는 프로젝트에서 가장 흔히 사용되는 에셋 유형을 알아봅니다."
- 컨텐츠 중에 대부분이 '에셋'으로 취급되는데 콘텐츠 브라우저에서 Geometry 폴더로 가면 SM_Building 에셋이 보인다. 이걸 우클릭해서 '탐색기로 보기'를 누르면 그 에셋이 실제로 위치한 폴더가 탐색기로 열린다.
- 탐색기로 그 에셋을 보면 파일 확장자가 uasset 이다. 대부분은 FBX나 스태틱 벤치파일들을 언리얼엔진의 에셋으로 변환한 것들이다.
- SM_Building을 찍어보면 우측 월드 아웃라이너창에서 StaticMeshActor라고 분류되고 있는데, 메시로 만들어 졌고 Actor(배우)역할을 하기 때문이다.
- 건물을 복제해보자. 왼쪽 ALt키를 누른채 해당 방향의 화살표 부분에 마우스를 대고 드래그 해주면 된다. 원래 건물도 하나의 '인스턴스'였는데 복제를 해보니 같은 '인스턴스'가 생성된 것을 알 수 있다. (우측 아웃라이너 밑에 디테일 패널)
- 복제했다고 해서 에셋에 뭔가 파일이 복사된 것은 아니다. 디스크에 있는 에셋을 레퍼런스하는 "인스턴스"이기 때문이다.
- 언리얼엔진에서 거의 모든 요소는 '오브젝트'들로 구성되어 있다.
- 콘텐츠브라우저에서 콘텐츠 선택한 상태에서 오른쪽 공간에서 마우스 우클릭을 하면 '블루 프린트 클래스'가 보이고 이걸 클릭하면 위의 이미지 처럼 '오브젝트'에 대한 것들을 볼 수 있다.
- 이 '오브젝트'는 직접 베이스 클래스인 오브젝트인데 이것은 언리얼엔진에서 작업할 모든 요소의 두뇌역할을 한다.
- '오브젝트' 아래를 보면 모든 개별 유형이 표시되는데, 월드 내에 배치되는 것들이고... 보다보면 Actor도 보이고, AnimNotify도 보인다. AnimNotify는 애니메이션 중간에 나타나는 알림이다.
- 언리얼엔진으로 작업할 때는 액터 레퍼런스, 오브젝트 레퍼런스, 클래스 레퍼런스가 있다는 걸 알아두자.
7. 뷰포트로 작업하기
"뷰포트는 게임 레벨을 표시해주는 창으로, 다양하고 강력한 기능을 갖추고 있습니다. 뷰포트를 통해 게임 레벨에 에셋을 추가하고 상호작용할 액터를 생성합니다. 에셋 위치와 방향을 조작하고, 다양한 뷰포트 환경설정을 사용하여 프로젝트를 효율적으로 편집 및 분석할 수 있습니다."
- 뷰포트에서 "마우스 좌클릭 + 마우스 움직이기" 는 수평방향으로 이동. 카메라가 약간 수평보다 위나 아래를 보고 있는 상태에서도 그 레벨에서의 "전체좌표계"에서의 수평방향으로만 이동. (WASD키와는 다르다)
- "마우스 우클릭 + 마우스 움직이기" 는 보는 각도를 자유자재로 변경
- "마우스 좌우동시클릭 + 마우스 움직이기"는 현재 바라보는 위치에서 "전체좌표계"에서의 수직평면 상에서 이동.
- "WASD 키"는 바라보는 방향으로 이동. W키를 누르면 뷰포트의 중심점 방향으로 이동.
- "마우스 우클릭 + WASD 키" 조합이면 자유롭게 날아다니는 게 가능.
- "마우스 스크롤"은 W키와 S키를 대신할 수 있다.
- 마우스 움직일 때와 WASD로 이동할 때의 속도는 뷰포트의 우측상단에 카메라모양 아이콘을 클릭하면 조절할 수 있다.
- 이동할 때와 각도를 바꿀 때 그리고 스케일을 조절할 때의 스냅을 줄 수 있다. 오토캐드에서의 스냅과 같다. 왼쪽부터 이동 스냅, 회전 스냅, 스케일 스냅 이다. 각각 파란색이면 스냅이 적용되지 않고 있다는 뜻이고 하얀색이면 스냅 적용중이란 뜻이다. 각 아이콘을 클릭하면 스냅적용/비적용 스위치가 된다.
- 월드 아웃라이너 창에서 어느 액터를 더블클릭하면 뷰포트에서 자동으로 포커스된다. (아니면 F키를 눌러도 포커스된다)
- 오브젝트를 이동시킬 때는 각 방향 화살표에 마우스를 대고 드래그 해서 움직일 수 있다. 두 화살표 사이의 ㄱ자 표시에 마우스를 대면 두 화살표가 동시에 활성화되는데 그 때는 두 화살표가 생성하는 평면 상에서 자유롭게 이동시킨다는 뜻이다.
- 전체좌표계 (전체 스페이스) 와 로컬좌표계(로컬 스페이스)가 있다. 흡사 구조해석 프로그램과도 같다.
- 이동과 회전에 대해 기본적으로 전체 좌표계로 되어 있고 아래 이미지에서 지구본 모양 아이콘이 보이면 현재 선택되어 있는 오브젝트의 에디트 모드가 전체 좌표계 모드로 되어 있다는 뜻이다. 지구본 모양 아이콘을 클릭하면 로컬 좌표계로 바뀐다.
- 오브젝트를 포커스 한 상태에서 "Alt 키 + 마우스 좌클릭 상태 + 마우스 움직이기"로 그 오브젝트를 다양한 각도에서 포커스를 유지하면서 바라볼 수 있다. (은근히 자주 씀)
- Alt키를 누르고 해당 오브젝트의 이동좌표계화살표를 드래그 하면 그 방향으로 오브젝트가 복제된다. (Alt키를 놓아야 그 때 복제과정이 끝남)
- 뷰포트를 하나가 아니라 두 개로 쓰고 싶을 때는 뷰포트 좌측상단의 석삼자 아이콘을 클릭하고 레이아웃으로 가서 2채널에 첫번째 좌우분할을 선택한다. 그럼 아래와 같이 탑뷰(상단 뷰)와 원근뷰(Perspective)를 동시에 볼 수 있다.
- 탑뷰(상단 뷰)에서는 뷰포트 작동법이 약간 다른 것같다. 일단 줌은 마우스 스크롤이고, WASD키가 먹지 않는다. 마우스 우클릭+마우스움직이기는 탑뷰의 카메라의 수평방향이동이다. '마우스 좌우클릭+마우스 이동'은 스크롤과 똑같이 줌이다. 오토캐드랑 비슷한데 오토캐드에서는 스크롤버튼+마우스움직이기가 PAN이었는데 UE 탑뷰에서는 마우스 우측클릭+마우스움직이기가 PAN이다. (캐드에서도 PAN을 마우스 우클릭으로 바꿔서 써볼까....??)
8. 에셋 임포트하기
"커스텀 에셋을 에디터로 가져오는 것은 자신만의 프로젝트를 만들기 위한 필수 과정입니다. 일반적인 유형의 에셋을 프로젝트에 추가하고 사용할 수 있도록 준비하는 방법을 알아봅니다. 또한 에픽게임즈의 무료 학습 콘텐츠 등 외부에서 에셋을 이주하는 방법도 학습합니다."
- 에셋을 구해서 집어넣는 방법과 UE로 작업하던 에셋을 내보내는(마이그레이트, Migrate) 방법을 알아두는 것이 필요하다.
- 콘텐츠브라우저에서 임포트해올 폴더에서 빈공간에 마우스 우클릭하면 import 메뉴가 있다.
- 내보낼 때는 (예를 들어 메쉬의 경우) 콘텐츠브라우저의 Meshes 폴더에 해당 메쉬를 선택하고 마우스 우클릭하면 Asset Actions - Migrate 메뉴가 나온다. 다른 언리얼엔진의 프로젝트로 보내는 것이 Migrate다.
9. 프로젝트 프리뷰
"Matt이 프로젝트를 프리뷰하면서 전반적인 모습을 둘러보고 캐릭터를 생성 및 사용하는 방법을 보여줍니다."
- 다운받은 예제파일을 연다. (코드로 다운받으면 라이브러리에 UE5 얼리액세스 퀵스타트 가 보임)
- 콘텐츠브라우저에서 블루프린트 폴더에 가보면 커스텀 캐릭터가 하나 보일 것임. 그걸 드래그 해서 레벨에 갖다놓는다.
- 이 상태에서 플레이를 누르면 방금 갖다놓은 캐릭터를 움직일 수 없다.
- 캐릭터를 선택한 후 우측에 디테일 패널 아래쪽을 보면 Auto Possess Player 가 있는데 Disabled로 되어 있는 것을 볼 수 있다. 이것을 Player0으로 바꾼다.
- 그리고 플레이 해보면 이제 그 캐릭터에 빙의해서 움직일 수 있다.
- 스타트 포인트를 지정하는 것이 여러모로 편리해지는데 '액터배치' 패널에서 찾을 수 있다. 이렇게 해야 캐릭터가 떨어져 죽어도 다시 플레이할 때 떨어진 위치에서 시작하는 게 아니라 스타트 포인터에서 시작하게 된다.
10. 머티리얼 및 메시 사용하기
"이 강좌에서는 새 스태틱 메시를 프로젝트에 임포트하는 방법을 살펴본 이전 강좌에 이어서 에셋의 머티리얼을 생성하고 레벨에서 사용하는 방법을 학습합니다."
- 임포트 받을 메시+텍스쳐 파일들을 보통 세트로 제공된다. 메시에 따른 텍스쳐 파일들이 세트로 있어야 한다는 뜻이다.
- 예제 프로젝트에 importme.zip 파일에서 임포트한 메시들과 텍스쳐들 중에 Powerup_A 에셋에 대해 다룬다.
- 컨텐츠 폴더에 Meshes폴더를 만들고 압축파일에 있던 메시파일들을 집어 넣는다. fbx파일들이다.
- Meshes 폴더 하위 폴더로 Textures폴더를 만들고 tga파일들의 텍스쳐파일들을 집어넣는다.
- Power_A 머티리얼을 더블클릭해보자. (파일이름을 MAT_로 바꿔주는 게 좋다. 표준명명규칙이래나...)
- 위 텍스쳐를 보면 ARM으로 끝나는 텍스쳐는 RGB채널에 ARM정보가 각각 들어있다는 뜻인데, A는 앰비언트, R은 러프니스, M은 메탈릭 이라는 뜻이다.
- BC로 끝나는 텍스쳐는 Base Color용이라는 뜻이다.
- 메인 에디터 창에서 T_Powerup_A_BC 텍스쳐를 드래그 해다가 Powerup_A 머티리얼 에디터 창으로 가져온다.
- 같은 방법으로 T_Powerup_A_ARM 텍스쳐를 복사해다가 Powerup_A 머티리얼 에디터에 Texture Sample노드로 붙여넣는다.
(이렇게 하는 방법은 여러가지가 있는데 ①드래그로 끌어오는 방법과, ②메인 에디터에서 해당 텍스쳐를 선택한 상태에서 머티리얼 에디터에서 빈공간에 'T'키를 누른채로 마우스 좌클릭를 하는 방법이 있다.)
- 참고로 텍스쳐 샘플 노드의 텍스쳐는 왼쪽의 디테일 패널의 Texture에서 바꾸거나 없앨 수도 있다.
- 아까 드래그해가지고 온 T_Powerup_A_ARM 텍스쳐 샘플 노드를 메인 노드에 연결시킨다.
- 이렇게 저장하고 나서 Powerup_A 머티리얼을 쓰는 메쉬 SM_Powerup_A 메쉬를 가져오면 아래처럼 나온다.
- 요약하자면, 뭔가에 텍스쳐를 입히고 싶을 경우, 머티리얼을 생성하고 머티리얼안에 텍스쳐들을 넣고 메인 노드의 슬롯에 적절한 텍스쳐를 잘 연결해주면 된다.
'PC' 카테고리의 다른 글
파이썬 GUI : PyQt5 기초 {퍼옴} (0) | 2022.02.10 |
---|---|
URL단축 사이트 (0) | 2022.01.27 |
[UE]언리얼엔진 공부 과정 (기록중) (0) | 2022.01.23 |
피닉스마이너의 원리 (0) | 2022.01.03 |
POS지분증명... 사기치기 더 쉽다 (0) | 2022.01.02 |