언리얼 엔진과 블루프린트란?
언리얼 엔진을 사용하는 이유
Unity와 같은 다른 게임 엔진들과 비교하여 Unreal이 가진 차별점은 바로 화려한 3D 성능이다.
화려한 3D 성능을 포함한 게임을 만들어야할 때 타엔진보다 사용이 적합하고 심지어 무료이기 까지도 하다. 다른 게임 엔진들 중 내가 사용해왔던 Unity는 캐주얼(2D) 게임에 유리하다고 할 수 있다.
블루프린트란?
Unreal의 가장 큰 단점인 사용하기 어렵다는 점을 보완해줄 수 있는 기능이다. 블루프린트는 프로그래밍 언어를 몰라도 게임을 제작할 수 있도록 해주기 때문이다.
블록 같은 노드들이 여러개 존재하고 그 노드에 뚫려 있는 구멍들을 선으로 엮어가며 프로그래밍 하는 방식을 블루프린트 노드라고 한다. 스크립트창에 키보드로 코드를 입력하는 방식과는 조금 다른 다른 방식임을 알 수 있다. 하지만 편리해보이는 이 방식은 장점만이 아니라 단점도 가진다.
장점 | 타직군과의 협력하여 게임을 완성할 수 있으며 블루프린트만으로도 게임을 완성할 수 있다. |
단점 | C++ 코드로 개발하는 것보다 최적화가 떨어지며 큰 기능을 구현할 때는 C++보다 더 복잡해질 수 있다. |
언리얼 다운로드 하기
에픽게임즈 런처 다운로드
언리얼 엔진 다운로드는 언리얼 홈페이지에서 런처를 다운받는 것으로 시작한다.
https://www.unrealengine.com/ko
에픽게임즈 런처를 다운받은 후 회원가입을하면 언리얼 엔진을 다운받을 사전 준비를 마친 것이다.
언리얼 엔진 다운로드
에픽게임즈 런처에서 언리얼 엔진 메뉴를 선택한 후 라이브러리로 들어간다.
엔진 버전 옆에 +버튼을 누른 후 버전 번호를 클릭하여 다운로드할 버전을 선택해준다.
각각 앞부터 메이저 버전. 세부버전. 패치버전을 나타내며 패치버전은 자동으로 업데이트 되기 때문에 앞에 두 버전만 신경써서 다운로드 해준다. 참고로 나는 5.4.4 버전을 다운받아 사용한다.
버전 아래 드롭다운 메뉴를 클릭하여 옵션을 선택해준다.
언리얼 엔진에서 블루프린트만 사용한다고 가정했을 때 엔진소스와 디버깅을 위한 편집기 기호는 체크를 해제하여도 된다. 타겟 플랫폼은 모바일 등의 플랫폼으로 개발하지 않을 것이므로 아무것도 선택하지 않았다.
언리얼 프로젝트 만들기
최근 프로젝트를 여는 것이 아니라면 GAMES를 선택한다.
언리얼에서 기본적인 기능을 사용하기 좋은 것은 First Person(1인칭), Third Person(3인칭) 이지만 현재 만들 프로젝트에서는 필요 없기 때문에 아무것도 없는 Blank로 프로젝트를 생성한다.
프로젝트의 위치와 이름을 짓고난 후 프로젝트 디폴트를 설정한다.
프로젝트 디폴트
프로젝트 디폴트 설정값을 아래와 같이 있다.
프로젝트 디폴트 설정값 | 설명 | |
Blueprint/C++ | Blueprint | 블루프린트만 사용 |
C++ | 블루프린트와 C++ 모두 사용 | |
Target Platform | Desktop | 데스크탑용 프로젝트 |
Mobile | 모바일용 프로젝트 | |
Quality Preset | Maximum | 고사양 기능을 기본적으로 적용 |
Scalable | 내 컴퓨터 사양에 맞추어 적용 | |
Starter Content | 시작 시 미리 배치할 물체를 준비해 놓을지 | |
Raytracing | 현실적인 빛 반사(성능 저하 가능성) |
이 프로젝트에서는 Blueprint와 Desktop을 선택하고 Scalable을 적용한다. 또한 Starter Content는 있는 것으로 설정, Raytracing은 끄는 것으로 디폴트 설정을 마친다.
언리얼 엔진 환경 살펴보기
이름 | 기능 |
Untitled | 현재 레벨(맵)의 이름 |
메인 툴바 | 현재 레벨을 저장, 물체 배치, 실행 셋팅 조절 가능 |
엔진 퀄리티 세팅 | 화면을 볼 때 여러가지 효과들을 끄고 켜는 것이 가능 |
뷰포트 | 현재 레벨에 배치된 물체를 시각적으로 보여줌 |
아웃라이너 | 현재 레벨에 배치된 물체를 구조적으로 보여줌 |
디테일 패널 | 물체를 선택하면 상세 내용 확인 가능 |
이동 | wasd 이동, 마우스 오른쪽 드래그 |
외부 파일을 프로젝트 내 파일로 Import 하기
Import
: 외부파일을 내부파일로 변환하는 작업
외부 파일을 프로젝트 내의 파일로 변환하는 법은 Unity에서와 동일하게 외부 폴더에서 Unreal의 Content Drawer로 파일을 드래그 앤 드랍하면 된다.
이미지, 비디오, 사운드 파일
프로젝트 내로 들어온 파일은 기존 외부 파일과는 다른 파일 형태를 하고 있음을 확인할 수 있다.
파일 형태 | 설명 |
파일 미디어 소스 | 비디오 파일을 언리얼에서 취급할 수 있는 형태 |
텍스터 파일 | 이미지 파일을 언리얼에서 취급할 수 있는 형태 |
사운드 웨이브 | 사운드 파일을 언리얼에서 취급할 수 있는 형태 |
프로젝트 내의 파일에 별 모양이 있는 것은 아직 저장되지 않았음을 의미하는 것이다.
3D 모델 파일
3D 모델은 특이하게 프로젝트 내 파일로 Import 할 때 옵선이 뜬다.
스켈레탈 메시는 3D 모델에 뼈가 있는 모델인지 없는 모델인지를 표시한다.
보통은 스켈레톤에 없음으로 놔두면 3D 모델이 가지고 있던 뼈를 알아서 사용한다.
uasset
실제 콘텐츠 파일을 탐색기에서 확인하게 되면 파일들이 모두 uasset이라느 파일 형식으로 변해있는 것을 확인할 수 있다.
uasset(unreal asset)은 언리얼에서 쓸 수 있게 가공된 파일이라는 뜻으로 uasset을 그대로 복사하면 다른 프로젝트에 이식도 가능하다.
프로젝트 파일 이주시키기
이주란 프로젝트에서 다른 프로젝트 파일로 에셋을 복사하려 할 때 좀 더 안전하게 다른 프로젝트로 에셋을 복사하는 방법이다.
에셋을 선택하고 오른쪽 클릭>Asset Action>Migrate 를 선택한 후 이주할 프로젝트의 콘텐츠 폴더 경로를 찾으면 된다.
프로젝트 파일을 외부로 Export하기
콘텐츠 드로어에 있는 파일을 오른쪽 클릭>Asset Action>Export 를 선택하면 파일을 uasset에서 원래의 파일 형식으로 빼올 수 있다. 단, 3D 모델과 같이 여러개로 분리된 파일은 Export 하면 개별로 Export 된다는 점은 주의해야 한다.