icon
4장 : 레벨 디자인

기본 레벨 생성 및 구조 설정


지금까지 언리얼 엔진의 기본적인 인터페이스와 환경 설정을 익히고, 프로젝트에 필요한 에셋을 관리하는 방법을 배웠습니다. 이제부터는 여러분이 직접 3D 공간을 만들고 꾸며나가는 레벨 디자인(Level Design) 의 세계로 본격적으로 뛰어들 시간입니다. 이 절에서는 언리얼 엔진에서 새로운 레벨을 생성하고, 기본적인 구조를 설정하는 방법을 상세히 다룰 것입니다. 마치 하얀 도화지 위에 그림을 그리기 전에 밑그림을 그리듯, 여러분의 게임 세상의 기초를 튼튼하게 다져 봅시다.


레벨(Level)이란 무엇인가?

언리얼 엔진에서 레벨(Level) 은 게임이나 인터랙티브 콘텐츠가 플레이되는 3D 공간의 단위입니다. 다른 게임 엔진에서는 '씬(Scene)'이라고 부르기도 합니다. 하나의 레벨은 다음과 같은 요소들로 구성됩니다.

  • 지형(Landscape): 땅이나 산과 같은 자연 환경.
  • 액터(Actors): 레벨에 배치되는 모든 오브젝트(3D 모델, 라이트, 카메라, 캐릭터, 사운드, 이펙트 등).
  • 조명(Lighting): 레벨의 빛과 그림자.
  • 후처리(Post Process): 레벨의 최종 화면에 적용되는 시각 효과(색상 보정, 블룸, 안티-에일리어싱 등).
  • 게임플레이 로직: 레벨 내에서 발생하는 이벤트나 상호작용.

여러분의 게임은 하나 이상의 레벨로 구성될 수 있습니다. 예를 들어, 메인 메뉴 레벨, 튜토리얼 레벨, 각 스테이지 레벨 등이 있을 수 있습니다.


새로운 레벨 생성하기

언리얼 에디터에서 새로운 레벨을 만드는 방법은 매우 간단합니다.

메뉴에서 생성

  • 에디터 상단 메뉴에서 '파일(File) > 새 레벨(New Level)' 을 클릭합니다.
  • '새 레벨 생성(New Level)' 창이 나타나면 다양한 템플릿 옵션이 보일 것입니다.

레벨 템플릿 선택

  • 빈 레벨(Empty Level): 아무것도 없는 완전히 비어있는 레벨입니다. 가장 기본적인 상태에서 시작하고 싶을 때 선택합니다.
  • 기본 레벨(Basic Level): 스카이라이트(Sky Light), 방향성 광원(Directional Light), 스카이 스피어(Sky Sphere), 플레이어 시작 위치(Player Start), 그리고 기본적인 평면 지형(Plane)이 포함된 레벨입니다. 프로토타입 작업이나 간단한 테스트를 할 때 편리합니다.
  • 오픈 월드(Open World): 넓은 지형과 볼류메트릭 클라우드 등 오픈 월드 환경에 적합한 기본 설정이 되어 있는 레벨입니다.
  • VR 기본(VR Basic): VR 프로젝트를 위한 기본적인 구성 요소가 포함된 레벨입니다.
  • 새로운 기능 레벨(New Feature Level): 언리얼 엔진 버전 업데이트 시 새로운 기능을 시연하는 데모 맵입니다.
  • '기본 레벨(Basic Level)' 을 선택하고 '생성(Create)' 버튼을 클릭하는 것을 권장합니다. 이 템플릿은 최소한의 조명과 플레이어 시작 지점이 있어 바로 테스트하기에 용이합니다.

레벨 저장하기

  • 새로 생성된 레벨은 아직 저장되지 않은 상태입니다. 반드시 저장해야 합니다.
  • 툴바의 '저장(Save Current)' 버튼(디스켓 모양 아이콘)을 클릭하거나, Ctrl+S를 누릅니다.
  • '다른 이름으로 레벨 저장(Save Level As)' 창이 나타나면, 레벨을 저장할 폴더를 선택하고 이름을 지정합니다. (예: Content/Maps/MyFirstGameLevel.umap)
  • : 모든 레벨 파일은 .umap 확장자를 가집니다. Content/Maps 폴더를 만들어 레벨 파일들을 한곳에 모아두는 것이 좋습니다.

레벨의 기본 구조 및 필수 액터

'기본 레벨' 템플릿을 선택했다면, 여러분의 뷰포트에는 몇 가지 액터들이 이미 배치되어 있을 것입니다. 이들은 대부분의 레벨에서 필수적으로 필요하거나 매우 유용한 액터들입니다.

플레이어 시작 위치 (Player Start)

  • 역할: 게임이 시작될 때 플레이어 캐릭터가 스폰(Spawn)되는 위치를 나타내는 액터입니다.
  • 월드 아웃라이너: PlayerStart라는 이름으로 찾아볼 수 있습니다.
  • 중요성: 이 액터가 레벨에 없으면 게임이 시작될 때 플레이어가 어디서 시작해야 할지 알 수 없으므로, 반드시 레벨에 하나 이상 존재해야 합니다. 플레이어 시작 위치의 방향은 플레이어가 처음 바라보는 방향이 됩니다.

조명 액터 (Light Actors)

'기본 레벨'에는 주로 두 가지 조명 액터가 포함되어 있습니다.

  • 방향성 광원 (Directional Light)
    • 역할: 태양광처럼 모든 방향에서 평행하게 빛을 비추는 광원입니다. 낮 시간의 태양이나 달과 같은 역할을 합니다.
    • 특징: 위치는 중요하지 않고, 회전(Rotation) 이 빛의 방향을 결정합니다.
    • 월드 아웃라이너: DirectionalLight로 찾아볼 수 있습니다.
  • 스카이 라이트 (Sky Light)
    • 역할: 하늘 전체에서 들어오는 빛을 시뮬레이션하여 간접광을 표현합니다. 야외 환경에서 사실적인 주변광을 만드는 데 필수적입니다.
    • 특징: 주변 환경(스카이 스피어, HDRI 맵 등)의 색상 정보를 샘플링하여 레벨에 적용합니다.
    • 월드 아웃라이너: SkyLight로 찾아볼 수 있습니다.
  • 스카이 스피어 (Sky Sphere)
    • 역할: 레벨의 배경에 구름이 있는 하늘을 보여주는 대형 구체 메시입니다.
    • 특징: 주로 Directional Light의 회전에 반응하여 낮/밤 전환을 시각적으로 표현합니다.
    • 월드 아웃라이너: BP_Sky_Sphere 또는 유사한 이름으로 찾아볼 수 있습니다. 이는 일반적으로 블루프린트 클래스로 구현되어 있습니다.

바닥 또는 지형 (Floor / Landscape)

  • 역할: 플레이어가 걷거나 오브젝트가 배치될 수 있는 기본적인 바닥면을 제공합니다.
  • '기본 레벨'에서는 Floor 또는 Plane이라는 이름의 스태틱 메시(Static Mesh) 나, 아예 랜드스케이프(Landscape) 액터가 존재할 수 있습니다.
  • 랜드스케이프: 넓은 야외 환경을 만들 때 사용되며, 높낮이를 조절하고 페인트하여 다양한 지형을 만들 수 있습니다. (다음 장의 '지형 생성 및 편집' 절에서 자세히 다룹니다.)

레벨에 액터 배치 및 초기 설정 연습

이제 이 기본적인 레벨 위에 여러분의 첫 번째 오브젝트를 배치하고 조작해 봅시다.

오브젝트 배치

  • 콘텐츠 브라우저에서 StarterContent 폴더를 확장하고, Props 폴더로 이동합니다.
  • SM_Chair (의자) 또는 SM_Table (테이블)과 같은 스태틱 메시 에셋을 찾아 뷰포트로 드래그 앤 드롭합니다.
  • 오브젝트가 바닥에 제대로 놓이지 않았다면, 이동(W) 기즈모를 사용하여 바닥에 닿도록 옮깁니다. (나중에 물리 시뮬레이션으로 자동으로 떨어뜨리는 방법도 배웁니다.)

액터 이름 변경

  • 뷰포트나 월드 아웃라이너에서 방금 배치한 의자를 선택합니다.
  • F2 키를 눌러 SM_Chair_01과 같이 의미 있는 이름으로 변경합니다.

디테일 패널 활용

  • 선택된 의자의 디테일 패널을 확인합니다.
  • 'Transform (트랜스폼)' 섹션에서 'Location (위치)', 'Rotation (회전)', 'Scale (스케일)' 값을 직접 변경해 봅니다.
    • 예: Location Z 값을 0으로 변경하여 바닥에 붙여봅니다.
    • Rotation Z 값을 90으로 변경하여 의자를 회전시켜 봅니다.
    • Scale 값을 2로 변경하여 의자를 두 배 크게 만들어 봅니다.
  • : 각 입력 필드 옆에 있는 작은 노란색 화살표(Reset to Default)를 클릭하면 해당 속성을 기본값으로 되돌릴 수 있습니다.

플레이 테스트

  • 툴바의 '플레이(Play)' 버튼을 눌러 레벨을 실행해 보세요.
  • 여러분과 함께 배치한 의자가 레벨에 나타나는 것을 확인할 수 있을 것입니다.

프로젝트의 기본 맵 설정 확인 및 변경

여러분이 만든 레벨이 에디터를 시작할 때나 게임을 실행할 때 기본적으로 로드되도록 설정할 수 있습니다.

'편집(Edit) > 프로젝트 설정(Project Settings)' 을 클릭합니다.

'프로젝트(Project) > Maps & Modes (맵 & 모드)' 섹션을 찾습니다.

Default Maps (기본 맵)

  • Editor Startup Map (에디터 시작 맵): 언리얼 에디터를 실행했을 때 가장 먼저 열릴 레벨을 지정합니다. 드롭다운 메뉴를 클릭하여 여러분이 저장한 레벨을 선택합니다.
  • Game Default Map (게임 기본 맵): 게임을 빌드하거나 PIE(Play In Editor) 모드로 실행했을 때 가장 먼저 로드될 레벨을 지정합니다. 일반적으로 '에디터 시작 맵'과 동일하게 설정합니다.

이 설정을 변경한 후에는 에디터를 재시작해야 완전히 적용될 수 있습니다.


기본 레벨 생성과 구조 설정은 모든 레벨 디자인의 시작점입니다. 이 절에서 배운 내용들을 바탕으로 자신만의 첫 번째 빈 레벨을 만들고, 그 위에 에셋을 배치하고 조작하며 뷰포트에 익숙해지는 연습을 충분히 해보세요.

다음 절에서는 레벨의 심장과 같은 존재인 지형(Landscape) 을 생성하고 편집하는 방법에 대해 집중적으로 알아보겠습니다. 넓은 대지를 만들거나, 웅장한 산맥을 조각하는 방법을 배우게 될 것입니다. 준비되셨나요?