언어:
페이지 정보
태그:
엔진 버전:
언리얼 엔진

UE4 시작하기

언리얼 엔진

시작하기

에디터 기본

Project, 프로젝트란 각각의 게임을 이루는 콘텐츠와 코드 전부가 들어있는 독립적인 유닛으로, 디스크상의 디렉터리 세트와 일치합니다. 예를 들어 아래 그림에서 콘텐츠 브라우저 의 계층구조 트리에는 디스크의 Project 폴더 안에서 찾을 수 있는 동일한 디렉터리 구조가 들어있습니다.

이미지를 클릭하면 원본을 확인합니다.

Project 종종 그 파일에 관련된 .uproject 파일을 가리키기도 하지만, 서로와 공존하는 별개의 파일이 두 개 있습니다. .uproject 는 파일을 생성하고 열고 저장하는 데 사용되는 레퍼런스 파일인 반면, Project 에는 프로젝트에 관련된 모든 파일과 폴더가 들어있습니다.

프로젝트는 동시에 몇 개를 만들어 유지하면서 개발할 수 있습니다. 엔진(과 에디터) 둘 다 쉽게 전환이 가능하여, 주요 게임 프로젝트에 추가로 한 번에 다수의 게임 작업을 할 수 있습니다.

언리얼 에디터에서 게임 환경을 만드는 씬을 보통 레벨 이라 합니다. 일련의 오브젝트와 지오메트리를 배치하여 플레이어가 경험하게 될 월드를 정의할 수 있는 3D 환경이라고도 생각해 볼 수 있습니다. 월드에 배치할 수 있는 오브젝트면, 그게 라이트든, 메시든, 캐릭터든, 모두 액터(Actor)로 간주됩니다. 엄밀히 말해서 Actor 는 언리얼 엔진에서 3D 위치, 회전, 스케일 데이터를 포함한 오브젝트를 정의하는 데 사용되는 프로그래밍 클래스입니다. 하지만 편의상, 액터라 하면 레벨에 배치할 수 있는 오브젝트 로 생각해 보는 것이 가장 쉽습니다.

관련 비디오

에디터 뷰포트

뷰포트란 언리얼에 생성되는 월드를 보는 창입니다. 게임에서와 마찬가지 방식으로 돌아다닐 수 있는 원근법으로 사용할 수도 있고, 건축 설계도와 같은 도면 작업이 가능한 직교법으로 사용할 수도 있습니다. 언리얼 에디터 뷰포트에는 여러가지 툴과 비주얼라이저가 있어 원하는 데이터를 정확히 파악할 수 있습니다.

에디터 모드

Modes (모드) 패널에는 에디터의 다양한 툴 모드 모음이 들어있습니다. 이들은 레벨 에디터의 주목적을 특수한 작업에 맞게 바꿔주는 것으로, 이를테면 월드에 새 애셋을 배치한다든가, 지오메트리 브러시와 볼륨을 만든다든가, 메시에 칠을 한다든가, 폴리지를 생성한다든가, 랜드스케이프를 조각한다던가 등입니다.

액터 & 지오메트리

가장 기본적인 레벨에서, 레벨 제작은 언리얼 에디터 안의 레벨에 항목을 배치하는 것이 핵심입니다. 이러한 항목은 월드 지오메트리, 브러시 형태의 장식, 스태틱 메시, 라이트, 플레이어 스타트, 웨폰, 비히클 등이 될 수 있습니다. 어떤 항목을 언제 추가할 것인지는 보통 레벨 디자인 팀에 사용되는 작업방식에 따라 결정됩니다.

관련 비디오

콘텐츠 브라우저

Content Browser (콘텐츠 브라우저)는 언리얼 에디터 안에서 콘텐츠 애셋을 만들고, 임포트하고, 정리하고, 확인하고, 변경할 때 주로 사용되는 영역입니다. 여기서는 콘텐츠 폴더를 관리할 수도 있고, 애셋 이름변경, 이동, 복사, 레퍼런스 확인 등의 기타 유용한 기능이 제공되기도 합니다. 콘텐츠 브라우저 는 게임 내 모든 애셋에 대한 검색 및 상호작용이 가능합니다.

라이팅

씬의 라이팅은 광원 역할을 하면서 다음과 같은 빛의 특성을 결정하는 프로퍼티가 들어있는 라이트 액터를 통해 이루어집니다.

  • 라이트가 얼마나 밝은가

  • 라이트의 색은 어떠한가

여러가지 방식으로 빛을 내뿜는 라이트 종류도 여러가지 있습니다. 예를 들어 일반적인 전구는 모든 방향으로 빛을 내뿜습니다. 언리얼 엔진에서, 이러한 것은 포인트 라이트 라고 합니다. 한편 투광 조명등처럼 전구 뒷부분을 불투명하게 만들어 빛의 방출을 물리적으로 제한시키는 경우도 있습니다. 그런 것은 스포트 라이트 라고 합니다. 태양에서 오는 야외의 빛은, 태양이 정말 먼 거리에 있기 때문에, 한 지점이 아닌 한 방향에서 오는 것처럼 보입니다. 이러한 라이팅 유형의 시뮬레이션으로, 디렉셔널 라이트 가 있습니다.

이 가이드에서는 다양한 라이팅 기법을 사용하여 작은 아파트에 조명 설치 작업을 해 보겠습니다. 레벨에 라이트를 배치하고 셋업하는 법에 대한 기초입니다.

머티리얼 & 셰이딩

Material (머티리얼)이란 메시에 적용하여 씬의 시각적인 모습을 조절하는 데 사용되는 애셋입니다. 머티리얼에 대한 하이 레벨 설명으로는, 오브젝트에 칠하는 "페인트"로 이해하는 것이 가장 쉬울 수 있습니다. 하지만 그조차도 약간의 오해의 소지가 있는데, 머티리얼이 실제 오브젝트의 표면이 무엇으로 만들어 진 것처럼 보이는가, 즉 말 그대로 물체의 재질을 정의하는 것이기 때문입니다. 그 색깔, 광택, 투과도 등을 정의할 수 있는 것입니다.

좀 더 기술적인 용어로 풀어보면, 씬에 들어오는 빛이 표면에 닿을 때, 그 빛이 표면에 어떻게 반응하는지가 머티리얼을 사용해서 계산합니다. 이러한 계산은 머티리얼의 인풋에 입력된 여러가지 데이터를 통해 이루어지는데, 거기에는 다양한 이미지(텍스처), 수학 표현식, 머티리얼 자체에 상속되는 여러가지 프로퍼티 세팅 등이 포함됩니다.

언리얼 엔진 4 는 물리 기반 셰이딩 모델 을 활용합니다. 즉 머티리얼을 정의하는 데 있어 (디퓨즈 컬러나 스페큘러 파워같은) 임의의 속성을 사용하기 보다는, 현실에 보다 쉽게 연관지을 수 있는 속성을 사용한다는 뜻입니다. 여기에는 베이스 컬러(바탕색), 메탈릭(금속성), 스페큘러(반사성), 러프니스(거칠기) 등이 포함됩니다.

관련 비디오

블루프린트 비주얼 스크립팅

언리얼 엔진의 비주얼 스크립팅 시스템인 Blueprint (블루프린트)는 언리얼 에디터 안에서 노드 기반 인터페이스를 사용하여 게임플레이 요소를 만드는 개념을 토대로 한 비주얼 스크립팅 시스템입니다. 일반적인 스크립팅 언어와 마찬가지로, 엔진 내 객체 지향형(OO) 클래스 또는 오브젝트를 정의하는 데 사용됩니다. UE4 를 사용하다 보면, 블루프린트를 사용하여 정의된 오브젝트를 그냥 일상적으로 "블루프린트" 라 하는 경우가 많습니다.

이 시스템은 매우 유연하고 강력해서, 보통은 프로그래머가 없으면 힘들었던 개념 구현이나 툴 작업 거의 전부를 디자이너 스스로 해낼 수 있게 되었습니다. 게다가, 언리얼 엔진의 C++ 구현에서 가능한 블루프린트 전용 마크업을 통해 프로그래머가 어떤 기반 시스템을 제작하면, 디자이너가 그것을 확장하는 것도 가능합니다.

프로그래밍

게임플레이 구현과 엔진 변경은 어느 게임 프로젝트에 있어서도 핵심적인 부분입니다. 언리얼 엔진은 게임플레이 구현시 코드를 통한 방식 말고도 블루프린트를 사용한 비주얼 방식으로도 가능하며, 심지어 엔진이나 에디터를 변경 및 확장시키는 플러그인을 제작하여 디자이너나 아티스트가 마음대로 커스텀 함수성을 추가할 수도 있습니다.

게임 플레이 테스트

언리얼 엔진 내장 기능을 사용하여 레벨과 게임플레이를 테스트하고 버그를 잡습니다. 에디터에서 플레이 (PIE) 모드로 에디터에서 바로 실시간 피드백을 구하고, 에디터에서 시뮬레이트 (SIE) 모드로는 실행중인 게임에서도 오브젝트를 확인하고 수정할 수 있습니다. 이를 통해 플레이 도중에도 코드 변경, 리컴파일, 바로 적용이 가능합니다.