상세 컨텐츠

본문 제목

언리얼 엔진 시작하기(3)

언리얼엔진

by zmo 2024. 3. 30. 23:29

본문

오늘 알아보기

 

1. 언리얼 엔진의 빈 레벨은 어떻게 생성할수 있을까?(기본 에셋과 같은 레벨 만들기)

2. 내가만든 플레이어 파일은 어떻게 추가할수 있을까?

 


언리얼 엔진의 빈 레벨은 어떻게 생성할수 있을까?

 

기존의 레벨에서 새로운 레벨을 추가해보자

 

 

먼저 기존의 레벨과는 다른 레벨을 새로 만들어 주기 위해 새 레벨을 만들어주자

여러가지 기본제공 레벨 프리셋이 있어서 손쉽게 작업할수 있다

 

 

여러가지 프리셋이 있지만 나만의 레벨을 만들기 위해 빈 레벨을 만들어준다

이 레벨이라는 것은 프로젝트에 소속된 맵 등을 의미 하는 것으로 여기서 레벨을 새로 생성한다는 것은 맵을 추가하는 것과 같다고 볼수 있다

 

 

전체 콘텐츠폴더에서 나의 레벨을 새로 추가해주기로 한다 저번에 구입하여 사용하였던 UltimateFarming레벨이 콘텐츠 폴더에 존재하듯이 새로 만들 레벨도 이 폴더에 추가해준다

maps 라는 폴더를 추가하여 level1이라는 이름의 레벨을 만들기로 하였다

 

 

꼭 콘텐츠가 섞이지 않고 분류하기 쉽도록 기능에 따른 폴더를 새로 추가하여 생성하도록 하자 여기서는 maps라는 폴더에 level1의 레벨을 새로 저장하기로 하였다

맵이 존재하려면 보통의 경우에는 발붙힐 땅이 필요하다 floor라고 검색하여 추가하도록 해주자 내가 구입한 맵 에셋을 검색할수 없다면 추가 버튼을 눌러 추가하는 것을 잊지는 않았는지 확인하자

 

 

콘텐츠 드로어에서 바닥을 찾아 마우스로 끌어다 놓아 추가해주도록 하자 다만 여기서 주의해야 할 점은 같은 바닥이라도 움직이지 않는 스태틱 메시와 움직이는 스켈레탈 메시라는 종류가 있다 이번에 만들 레벨은 평범하게 고정이 되어있는 발판이면 충분 하므로 스태틱 메시를 사용해주어야 한다

 

스태틱 메시(static mash)

-메시 데이터가 고정되어있어 움직이지 않는 고정된 데이터(움직이지 않는 바닥, 벽등)

스켈레탈 메시(skeletar mash)

-메시 데이터와 뼈대를 이루는 데이터가 나누어져 있어 뼈대에 따라 애니메이션을 넣는것이 가능하다

 

이 많은 필터 메뉴를 언젠가 다 만져볼 생각을 하니 기대된다

 

 

데이터 이름을 하나하나 확인하며 내가 필요한 종류를 고르기는 힘이드니 필터 메뉴를 통해 고르도록 하자

가장 기본이 되는 바닥을 내가 만들 레벨에 크기에 맞게 조정해주자

 

 

바닥을 고른후 끌어다 놓아 내가 원하는 대로 왼쪽의 트랜스폼 메뉴를 통해 조정할수 있다 

뷰포트의 오른쪽 위에 파란색 격자무늬를 클릭하면 한번에 움직이는 거리를 조절할수 있다

 

 

땅을 추가하고 싶을때 그냥 복사하면 높이가 맞지 않아 고생할수 있다 이때 Art를 누르고 사진과 같이 화살표를 잡아당겨주면 수평, 혹은 수직으로 복사하여 이동할수 있다

빛이 없는 어둠속에서는 레벨을 실행해도 아무것도 보이지 않는다 캐릭터 실루엣도 보이지 않아야 정상이긴 하다

 

 

이대로 실행 버튼을 누르면 레벨에 빛이 없고 플레이어의 시작지점도 정해놓지 않았기 때문에 아무것도 보이지 않고 캐릭터도 추락한다

먼저 보는 것이 중요하기에 씬을 라이트 없이 렌더링해주는 언릿 뷰 모드를 사용해보자

 

 

실행을 중지 한 후에도 인스턴스가 보이지 않으므로 뷰 포트의 라이팅포함 뷰 모드를 언릿으로 바꾸어준다 이후 아웃라이너에서 인스턴스를 클릭해주어야 내가 보는 화면에서 랜더링해줄수 있다

여러가지 라이트를 추가하여 비교해보자

 

 

부드러운 기본 라이트를 구현하기 위해 사진과 같이 +그림을 눌러 디렉셔널 라이트를 추가해주었다 

클래스를 검색할 때에는 언리얼 엔진의 언어설정에 따라 클래스 이름이 지정되므로 주의하도록 하자

 

 

라이트를 추가하여 라이팅 포함 모드에서도 인스턴스가 랜더링 되었으므로 모든 클래스에서 플레이어 스타트 클래스를 통해 플레이어 스타트지점을 정해줄수 있다 

+버튼을 누른후 아무것도 클릭하지 않고 키보드로 클래스를 검색하여 찾을수도 있다

다른 물체와 플레이어 스타트에 필요한 공간이 겹치게 된다면 Bad Size라는 문구가 뜰수 있으므로 잘 지정해주도록 하자

 

 

플레이어 스타트 지점을 바닥 인스턴스 위로 지정해주었다 플레이어 시작을 추가할때 end키를 누르면 손으로 조정할 필요없이 지면 바로 위로 지정해줄수 있다

이후에 레벨을 테스트하면서 내가 바라보는 곳에 플레이어가 필요할때 현재 카메라 위치 모드를 사용하면 유용하다

 

 

레벨 실행 오른쪽의 점 세개 버튼을 눌러 플레이어 스타트 위치를 우리가 바라보고 있는 현재 카메라의 위치로 스타트 하는 것도 가능하다

5.2 버전에서는 다른 방식으로 기본 하늘을 추가할수 있었지만 5.3버전에서는 비주얼 이펙트를 통해 추가할수 있다

 

 

마지막으로 모든 플레이어의 배치와 조명의 배치가 완료되었지만 그대로 실행하면 바탕은 여전히 검정색 빈 공간이다 이때 언리얼 엔진에서 제공하는 비주얼 이펙트의 스카이 애트머스피어를 통해 하늘과 대기를 구현해줄수 있다

 

 

 

내가만든 플레이어 파일은 어떻게 추가할수 있을까?

 

 

이 프로젝트 세팅 메뉴를 통해 거의 모든 세팅을 관리할수 있다

 

 

왼쪽 위의 편집-프로젝트 세팅 메뉴를 통해 프로젝트 세팅 창을 띄워 주었다 이 창에서는 각종 프로젝트의 세팅과 툴 등을 확인하고 관리할수 있다

프로젝트의 기본이 되는 파일들을 관리할수 있다

 

 

프로젝트의 맵 & 모드 메뉴로 들어와 디폴트 폰 클레스를 통해 내 플레이어의 모델링을 관리할수 있다

 

 


 

 

 

간단한 레벨의 생성을 해보는 시간을 가졌다 아직 어떻게 사용해야 하는지 모르는 메뉴들도 많고 직접 모델링도 해보지 못해서 아쉬운 느낌이 든다

고로 다음시간에는 EOL 플레이그라운드 맵을 사용하여 여러 타입의 라이트와 기타 비주얼 세팅에 대해 알아보면서 다른 메뉴에도 더 친숙해지는 시간을 가져보고자 한다

관련글 더보기