월드 파티션(World Partition) 시스템은 그리드를 사용하여 런타임 시 월드를 다이내믹하게 로드되고 언로드될 수 있는 셀로 분리합니다. 하지만, 멀리 있는 산과 나무, 절벽 등 멀리 떨어져 있고 상호작용이 없는 액터를 계속 보이게 해야 할 때가 있습니다.
HLOD 꺼짐. 로드된 셀의 콘텐츠만 표시됩니다
HLOD 켜짐. 언로드된 셀의 콘텐츠가 HLOD로 대체되었습니다.
월드 파티션 - 계층형 레벨 오브 디테일(World Partition - Hierarchical Level of Detail, HLOD) 시스템은 커스텀 HLOD 레이어를 사용하여 대량의 스태틱 메시 액터를 구성하고 단일 프록시 메시와 머티리얼을 생성합니다. 이 기법을 사용하여 언로드된 월드 파티션 그리드 셀을 시각화하고, 프레임당 드로 콜 수를 줄이고, 퍼포먼스를 향상할 수 있으며, 특히 대규모 오픈 월드와 함께 사용할 때 유용합니다.
<aside> 💡 랜드스케이프(Landscape)와 물(Water) 컴포넌트 같은 일부 월드 컴포넌트는 현재 HLOD 액터에서 지원되지 않습니다.
</aside>
월드 파티션 HLOD는 HLOD 레이어 에셋으로 제어합니다. 이러한 특수 에셋에는 세팅이 포함되어 있으며, 프로젝트에서 여러 HLOD 레이어를 사용할 수 있습니다.
세팅 | 설명 |
---|---|
레이어 타입(Layer Type) | 다음 옵션 중에서 레이어 타입을 선택합니다. |
• Instancing | |
• Merged Mesh | |
• Simplified Mesh | |
메시 병합 세팅(Mesh Merge Settings)/프록시 세팅(Proxy Settings) | Merged Mesh 또는 Simplified Mesh 레이어 타입을 선택하면 추가 옵션이 표시됩니다. |
항상 로드됨(Always Loaded) | 이 레이어에 의해 생성된 HLOD 프록시 메시가 항상 로드되는지 여부를 결정합니다. |
셀 크기(Cell Size) | 이 레이어의 HLOD 액터를 포함하도록 생성된 런타임 그리드의 셀 크기를 설정합니다. HLOD 레이어를 항상 로드됨 으로 설정한 경우, 이 옵션은 사용할 수 없습니다. |
로딩 범위(Loading Range) | 런타임 그리드가 해당 셀을 스트리밍하는 거리를 설정합니다. HLOD 레이어를 항상 로드됨 으로 설정한 경우, 이 옵션은 사용할 수 없습니다. |
부모 레이어(Parent Layer) | 이 HLOD 레이어에 의해 생성된 에셋이 자동으로 지정된 HLOD 레이어에 할당되도록 합니다. |
HLOD 머티리얼(HLODMaterial) | Merged Mesh 및 Simplified Mesh 레이어 타입에 대한 머티리얼을 구울 때 사용할 베이스 머티리얼을 설정합니다. |
[!] 고급 세팅입니다. 대부분의 사용 사례에는 디폴트 머티리얼로 충분합니다. |
HLOD 레이어를 사용하는 첫 단계는 레이어 타입을 선택하는 것입니다.
레이어 타입 | 설명 |
---|---|
Instancing | 이 레이어 타입의 스태틱 메시 에셋은 그 에셋에 대해 가장 낮은 레벨 오브 디테일(Level of Detail, LOD)을 사용하여 인스턴스드 스태틱 메시(Instanced Static Mesh, ISM) 컴포넌트로 대체됩니다. 이 레이어 타입은 트리와 폴리지 같은 임포스터 메시에 적합합니다. |
Merged Mesh | 이 레이어 타입의 스태틱 메시 에셋은 병합되어 하나의 프록시 메시를 생성합니다. |
Simplified Mesh | 이 레이어 타입의 스태틱 메시 에셋은 하나의 프록시 메시로 병합되고 메시 간소화가 수행됩니다. |
이러한 세팅은 병합된 메시를 선택한 경우에만 사용할 수 있습니다.
세팅 | 설명 |
---|---|
라이트맵 UV 생성(Generate Lightmap UV) | 병합된 메시에 라이트맵 UV를 생성합니다. 이 새로운 UV 레이아웃은 타깃 라이트맵 UV 채널에 배치됩니다. |
타깃 라이트맵 해상도(Target Lightmap Resolution) | 생성된 스태틱 메시에서 라이트맵 UV 좌표를 생성하는 데 사용되는 라이트맵 해상도를 지정합니다. 이 세팅은 UV 아일랜드 간의 거리를 제어합니다. 해상도가 높을수록 각 UV 아일랜드 사이의 간격이 좁아집니다. |
계산된 라이트맵 해상도(Computed Lightmap Resolution) | 입력 메시 컴포넌트의 라이트맵 해상도를 더하여 라이트맵 해상도를 계산할지 여부를 결정합니다. |
0에 피벗 포인트(Pivot Point at Zero) | 병합된 메시의 피벗 포인트 위치가 월드 원점인지 아니면 첫 번째 병합된 컴포넌트인지를 결정합니다. |
피직스 데이터 병합(Merge Physics Data) | 메시 컴포넌트, 특히 콜리전 프리미티브의 피직스 데이터를 병합할지 여부를 결정합니다. |
머티리얼 병합(Merge Materials) | 소스 머티리얼을 하나의 플랫 머티리얼로 병합합니다. 이 세팅은 LOD 선택 타입(LODSelection Type) 에 의해 결정되는 단일 LOD 레벨을 병합할 때만 사용할 수 있습니다. |
머티리얼 세팅(Material Settings) | 머티리얼 병합 이 활성화되었을 때 생성되는 간소화된 머티리얼의 머티리얼 세팅을 포함합니다. |
거터 크기(Gutter Size) | 최상위 밉 레벨에 대해 구운 머티리얼의 서브차트에 공간을 추가합니다. 텍셀로 측정됩니다. |
병합된 머티리얼 생성(Create Merged Materials) | 모든 소스 컴포넌트 머티리얼과 새로운 UV 좌표 세트로부터 플랫 머티리얼을 생성합니다. 이렇게 생성된 머티리얼은 기본적으로 어느 섹션에도 적용되지 않습니다. |
버텍스 데이터 메시로 굽기(Bake Vertex Data to Mesh) | 버텍스 컬러와 노멀 같은 버텍스 데이터를 결과 프록시 메시에 굽습니다. |
UV 출력(Output UVs) | 지정된 UV 채널을 병합된 메시로 출력합니다. 소스 메시 컴포넌트에는 지정된 채널에 대해 유효한 UV가 포함되어야 합니다. |
LOD 선택 타입(LODSelection Type) | 병합된 스태틱 메시 생성에 사용할 LOD 선택 모드를 결정합니다. |
• Use all LOD levels : 액터 병합 시 사용할 수 있는 모든 LOD 레벨을 사용합니다. | |
• Use specific LOD level : 액터 병합 시 선택한 LOD 레벨을 사용합니다. | |
• Calculate correct LOD level : 주어진 화면 크기에 적절한 LOD 모델을 계산합니다. | |
• Always use lowest detail LOD: 액터 병합 시 가장 낮은 디테일의 LOD를 사용합니다. | |
특정 LOD(Specific LOD) | 소스 메시에서 익스포트할 LOD 레벨을 지정합니다. |
머티리얼 굽기에 버텍스 데이터 사용(Use Vertex Data for Baking Material) | 버텍스 컬러와 노멀 같은 버텍스 데이터를 구워진 머티리얼에 굽습니다. 머티리얼 병합 을 선택했을 때만 이용할 수 있습니다. |
텍스처 비닝 사용(Use Texture Binning) | 가변 출력 텍스처 크기를 최종 아틀라스 텍스처에서의 중요도에 따라 계산합니다. 머티리얼 병합 을 선택했을 때만 이용할 수 있습니다. |
메시 라이트맵 UV 재사용(Reuse Mesh Lightmap UVs) | 머티리얼을 구울 때 소스 메시의 라이트맵 UV를 재사용할지 여부를 결정합니다. false면, 엔진이 새로운 UV 세트를 생성합니다. |
동등한 머티리얼 병합(Merge Equivalent Materials) | 동등한 것으로 간주되는 머티리얼의 병합을 시도합니다. 월드 포지션이나 액터 포지션을 사용하여 출력 색을 결정하는 경우, 이 프로세스로 인해 병합된 메시에 아티팩트가 발생할 수 있습니다. |
랜드스케이프 컬링 사용(Use Landscape Culling) | 사용할 수 있는 랜드스케이프 지오메트리를 사용하여 보이지 않는 트라이앵글을 컬링합니다. 예를 들어, 가장 낮은 트라이앵글이 랜드스케이프의 표면보다 아래에 배치된 트리 메시가 있는 경우, 가려진 트라이앵글은 병합 시 제거됩니다. |
임포스터 포함(Include Imposters) | 소스 메시 컴포넌트에 속한 모든 임포스터 LOD를 포함합니다. |
디스턴스 필드 허용(Allow Distance Field) | 이 메시에 대한 디스턴스 필드를 계산할 수 있습니다. 병합된 메시가 원거리에서만 렌더링되는 경우 이 세팅을 비활성화하면 메모리가 절약됩니다. |
나나이트가 활성화된 메시 생성(Generate Nanite Enabled Mesh) | 생성된 메시에 나나이트를 활성화합니다. |