PART 6 - 강의 2/4

City Sample 분석

The Matrix Awakens 도시 샘플 기술 분석

01

City Sample 개요

UE5 기술 데모의 핵심

City Sample은 The Matrix Awakens 데모에서 사용된 도시 환경을 학습용으로 공개한 프로젝트입니다. UE5의 모든 핵심 기술을 활용합니다.

City Sample 사양 City Sample 기술 사양: 규모: ├── 맵 크기: ~4km x 4km ├── 건물 수: 수천 개 ├── 차량/보행자: Mass AI 시뮬레이션 └── 플랫폼: PS5, Xbox Series X, PC 핵심 기술: ├── World Partition │ └── 단일 Persistent Level, 서브레벨 없음 ├── Nanite │ └── 고해상도 지오메트리 ├── Lumen │ └── 글로벌 일루미네이션 ├── Virtual Shadow Maps │ └── 고품질 그림자 ├── Chaos Physics │ └── 물리 시뮬레이션 ├── Mass AI │ └── 크라우드 시뮬레이션 └── Temporal Super Resolution └── 업스케일링
02

World Partition 구조

단일 레벨, 온디맨드 로딩

City Sample 월드 구조 City Sample World Partition 구조: 레벨 구성: ├── 단일 Persistent Level ├── 서브레벨 없음 └── 모든 콘텐츠가 World Partition으로 관리 Data Layers: ├── Procedural (절차적 생성 콘텐츠) ├── RooftopProps (루프탑 프롭) ├── Freeway (프리웨이) └── Environment (기타 환경) 스트리밍 설정: ├── 그리드 셀 크기: 설정에 따라 다름 ├── 로딩 범위: 콘텐츠 타입별로 차별화 └── HLOD: 원거리 빌딩용
HLOD 빌드 필수

City Sample을 처음 열면 HLOD가 빌드되지 않아 카메라 근처만 보입니다. Build > Build HLODs를 실행해야 원거리 셀도 HLOD로 표시됩니다.

03

절차적 생성

Rule Processor를 통한 자동 배치

Rule Processor 시스템 City Sample 절차적 생성: Rule Processor: ├── OpenStreetMaps 데이터 활용 ├── 포인트 클라우드 데이터로 도시 생성 └── 규칙 기반 에셋 배치 생성 프로세스: 1. OSM 데이터에서 도로, 블록 정보 추출 2. 블록별로 건물 배치 규칙 적용 3. 도로변에 가로등, 신호등 등 자동 배치 4. 루프탑에 프롭 자동 배치 5. World Partition 그리드에 맞춰 정렬 장점: ├── 수동 배치 최소화 ├── 규칙 기반 일관성 └── 대규모 도시 빠르게 생성

City Sample의 절차적 생성은 World Partition과 자연스럽게 통합됩니다. 생성된 액터들이 자동으로 적절한 셀에 배치됩니다.

04

Best Practices

City Sample에서 배우는 교훈

City Sample Best Practices 1. 랜드스케이프 처리 ├── "Include actor in HLODs" 비활성화 ├── "Is Spatially Loaded" 비활성화 └── Nanite Landscape 사용 2. 폴리지 분리 ├── 별도의 Foliage Grid 생성 ├── Loading Range 증가 └── Approximated Mesh HLOD Layer 사용 3. 규칙 기반 콘텐츠 생성 ├── 수동 배치 최소화 ├── 규칙을 통한 자동 배치 └── World Partition과 자연스럽게 통합 4. HLOD 레이어 구성 ├── 건물: Merged/Simplified Mesh ├── 폴리지: Approximated Mesh └── 레이어 체인으로 원거리 최적화

랜드스케이프

Nanite Landscape 사용, HLOD/Spatially Loaded 비활성화로 별도 관리.

폴리지

별도 그리드, 더 긴 로딩 범위, Approximated HLOD로 원거리 최적화.

05

학습 리소스

City Sample 탐색 방법

City Sample 학습 순서 City Sample 학습 순서: 1. 프로젝트 다운로드 (Epic Games Launcher) 2. 레벨 열기 └── Content/Map/City_Sample.umap 3. HLOD 빌드 └── Build > Build HLODs (필수) 4. World Partition 확인 ├── World Settings > World Partition ├── Data Layer Outliner └── World Partition Minimap 5. 디버그 시각화 ├── wp.Runtime.ToggleDrawRuntimeHash2D └── View Mode > LOD Coloration 6. Rule Processor 분석 └── Content/Blueprints/Rules 폴더 참고 문서: ├── City Sample Unpacked (Epic Learning) └── World Partition and Data Layers 섹션
SUMMARY

핵심 요약

  • City Sample은 4km x 4km 도시를 단일 레벨로 관리
  • World Partition + Nanite + Lumen 조합 학습에 최적
  • Rule Processor로 절차적 도시 생성
  • 랜드스케이프와 폴리지는 별도 설정으로 최적화
  • HLOD 빌드 후 원거리 렌더링 확인 필수
PRACTICE

도전 과제

배운 내용을 직접 실습해보세요

실습 1: City Sample 프로젝트 분석

Epic의 City Sample 프로젝트를 다운로드하고, World Partition 설정(그리드 크기, HLOD 설정, Data Layer 구성)을 분석하세요. World Partition 에디터 창에서 셀 구조를 시각화합니다.

실습 2: 도시 환경 HLOD 전략 재현

City Sample의 건물 HLOD 전략(근거리: 원본, 중거리: SimplifiedMesh, 원거리: ApproximateMesh)을 소규모로 재현하세요. 10개 이상의 건물로 구성된 블록에서 HLOD 체인을 구성합니다.

심화 과제

City Sample 수준의 도시 환경을 위한 완전한 World Partition 파이프라인을 구축하세요. 프로시저럴 배치 -> HLOD 빌드 -> 스트리밍 최적화 -> QA 검증까지의 전체 워크플로우를 자동화합니다.