[[ 기본 콘셉트 페이지 | 기본-콘셉트#텍스처레이아웃 ]]에서 소개했듯이 모든 메시의 UV 레이아웃은 뮤터블로 관리하여 사용을 최적화할 수 있습니다. UV 레이아웃을 분리하고 블록으로 구성하면 렌더링, 최적화, 체계 정리라는 이점을 얻을 수 있습니다. 이 페이지에는 그 세 가지 기능의 예시를 설명합니다.
텍스처 및 메시 섹션 병합
뮤터블은 머티리얼을 공유하는 여러 메시의 텍스처를 병합할 수 있습니다. 이 예시에서는 메시와 텍스처를 베이스 오브젝트에 추가하는 자손 오브젝트가 있는 단순한 커스터마이징 가능 오브젝트를 보여줍니다. 이 예시는 측면의 작은 분홍색 기둥으로 확장할 수 있는 노랗고 검은 기둥으로 구성됩니다.
에셋
> 베이스 오브젝트의 UV는 두 개의 블록으로 구성할 준비가 되어 있습니다.
> 이 액세서리의 UV는 하나의 블록만 형성합니다.
이러한 모든 스켈레탈 메시는 이전 이미지의 중간에 보이는 단 하나의 텍스처 파라미터인 컬러 텍스처 맵만 있는 동일한 머티리얼을 공유합니다.
오브젝트 구조
이 예시의 노드 그래프는 자손 오브젝트가 있는 베이스 오브젝트로 구성됩니다. 자손 오브젝트는 메시 섹션 확장(Extend Mesh Section) 모디파이어를 사용하여 텍스처가 있는 메시 프래그먼트를 베이스 메시에 추가합니다.
UV 레이아웃 세팅
[[ 스켈레탈 메시 노드 | 스켈레탈-메시-노드 ]]의 프로퍼티 탭에서 블록을 생성할 그리드 해상도를 설정할 수 있습니다. 베이스 메시의 메시 레이아웃 해상도는 같은 커스터마이징 가능 오브젝트 계층구조에 있는 모든 자손 메시의 해상도를 설정합니다.
이 예시에서 베이스 메시의 해상도는 2x2이며 두 개의 블록으로 구성됩니다. 두 개의 블록은 향후 커스터마이징 과정에서 이들 중 하나의 블록에 포함된 메시를 완전히 제거할 것을 염두에 두고 전략적으로 설정했습니다.
> 이러한 경우 이 메시에 설정된 원본 텍스처는 256x256이며 블록 해상도는 2x2입니다. 즉, 자손 메시의 모든 블록 유닛은 128x128이 됩니다.
다음 이미지는 자손 오브젝트가 활성화되지 않은 최종 UV 레이아웃을 보여줍니다.
> 이로 인한 각 메시 섹션의 UV 레이아웃을 보려면 뮤터블 에디터의 프리뷰 인스턴스 뷰포트(Preview Instance Viewport) 탭에 있는 'UV' 버튼을 클릭하면 됩니다.
텍스처 병합
메시 확장 모디파이어는 태그에 따라 자신이 적용된 메시 섹션을 확장합니다(태그 및 모디파이어 참조). 즉, 메시는 수정된 메시 섹션에 추가되고 텍스처는 수정된 텍스처 섹션에 추가됩니다. 이 자손 메시 레이아웃의 블록 해상도는 1x1로 설정됩니다. 이 1x1 블록은 베이스 블록에 추가됩니다.
> 이 경우, 이 자손 메시의 원본 텍스처는 256x256이지만, 1x1 블록으로 설정되므로 수정된 오브젝트 텍스처와 병합될 때는 128x128로 크기가 조정됩니다. 텍스처가 이미 128x128이면 크기가 조정되지 않습니다.
(중요) 에셋의 UV 레이아웃을 생성할 때 텍스처 크기 및 블록 해상도를 미리 계획해 둬야 가장 최적화된 원하는 퀄리티와 모양을 얻을 수 있습니다.
다음 이미지는 이 자손 오브젝트가 활성화된 최종 UV 레이아웃을 보여줍니다.
> 1x1 블록이 빈자리에 추가되었습니다.
최종 텍스처
다음 이미지는 최종 텍스처를 보여줍니다.
> 베이스 메시만 있는 경우
> 자손 메시가 활성화된 경우
메시 제거에 블록 사용하기
뮤터블에서는 UV 레이아웃에서 블록을 선택하여 메시를 제거할 수 있습니다. 이를 수행하려면 [[ Remove Mesh Blocks | Remove-Mesh-Blocks-노드 ]] 모디파이어 노드를 이용하면 됩니다.
이전 예시를 확장한 이 예시에서는 더 큰 파란색 베이스가 노란색 기둥에 추가됩니다. 노란색 기둥 메시의 일부분은 새로운 파란색 베이스로 오버랩되므로 이 부분은 제거됩니다.
에셋
>> 아까와는 다른 이 액세서리의 UV는 하나의 2x1 블록으로만 구성되며 이는 부모 블록을 대체합니다.
오브젝트 구조
두 번째 자손 오브젝트가 예시에 추가되었습니다. 이 자손 오브젝트는 이전의 오브젝트와 구조가 같지만, 다음이 추가되었습니다.
작동 원리
이 경우, 자손 메시의 UV 레이아웃 그리드는 1x2 블록만 있는 2x2 해상도입니다.
> 이 자손의 두 블록 중 하나는 베이스 레이아웃의 빈 공간에 배치되고 다른 하나는 베이스 메시의 제거된 메시를 대체합니다.
이 자손 오브젝트에는 Mesh Layout 노드 외에도 베이스 오브젝트 메시 섹션에 영향을 주는 Remove Mesh Blocks 모디파이어 노드가 있습니다. 노드 프로퍼티(Node Properties) 탭에서 적절한 태그를 설정하면 수정된 메시의 UV 레이아웃이 표시되고 UV 레이아웃 블록을 추가할 수 있습니다. Remove Mesh Blocks 노드는 이러한 블록 내에 있는 모든 메시를 제거합니다.
> 이 경우 오른쪽 상단의 1x1 블록이 선택됩니다. 이 블록에는 노란색 기둥의 검은색 베이스 부분이 포함되어 있습니다. 이 부분이 제거됩니다.
커스터마이징 가능 오브젝트가 컴파일되고 파란색 베이스 자손 오브젝트가 활성화되면, 검은색 베이스는 제거되고 새로운 파란색 베이스의 블록은 최종 UV 레이아웃에 병합됩니다.
최종 텍스처
다음 이미지는 두 번째 자손 오브젝트가 적용된 최종 텍스처를 보여줍니다.
복잡한 블록 구조가 있는 예시
다음 이미지는 커스터마이징 가능 오브젝트 예시 캐릭터 'Bandit_forRPG'의 블록 구조를 보여줍니다.
> 캐릭터의 블록 구조를 보여주는 Mesh Layout 노드 프로퍼티입니다.
> 인스턴스의 파라미터를 디폴트값으로 설정합니다.
> 최종 컬러 텍스처가 있는 인스턴스 예시입니다.
> 최종 텍스처가 있는 다른 인스턴스 예시입니다.