팹에 퍼블리싱할 메타휴먼 캐릭터와 메타휴먼 호환 에셋은 제품 유형에 적합한 포맷과 구조를 사용해야 합니다. 예를 들어 스켈레탈 클로딩은 편집 가능한 캐릭터와는 다른 요구 사항을 따라야 합니다.
비교적 정리가 잘 되어 있는 프로젝트에서 시작하는 것이 가장 좋습니다.
일반 프로젝트 구조
각 제품 유형에 대한 에셋은 최상위 폴더 하나에 생성해야 합니다. 예를 들어 편집 가능한 모든 캐릭터는 단일 폴더에 저장해야 합니다. 에셋 유형별로 다른 폴더를 사용하는 것이 좋습니다.
기본적으로 메타휴먼 매니저는 아래 표에 나와 있는 위치에서 검증 및 패키징할 에셋을 찾습니다.
| 에셋 유형 | 경로 |
|---|---|
캐릭터 어셈블리 |
|
스켈레탈 클로딩 |
|
의상 |
|
그룸 |
|
이러한 폴더는 프로젝트 세팅(Project Settings)의 플러그인(Plugins) > 메타휴먼 SDK(MetaHuman SDK) > 패키징 경로(Packaging Paths)에서 환경설정할 수 있습니다.
각 최상위 폴더에서는 다음 섹션에 설명된 대로 에셋을 정리해야 합니다.
편집 가능한 캐릭터
패키징 준비가 완료된 편집 가능한 캐릭터에는 캐릭터가 사용하는 모든 에셋이 폴더 하나에 포함되어 있습니다. 폴더 이름은 [character_name]으로 짓습니다.
편집 가능한 캐릭터는 메타휴먼 캐릭터 에셋의 단일 인스턴스입니다. 이 에셋의 이름은 [character_name] 폴더와 동일해야 합니다.
메타휴먼 캐릭터 에셋은 종속 에셋이 포함된 폴더와 함께 제공될 수 있습니다. 이 폴더의 이름은
[character_name] 폴더와 동일합니다. 이 폴더에서는 종속 에셋을 필요에 맞게 구성할 수 있습니다.
메타휴먼 캐릭터 에셋은 권장 에셋 명명 규칙에 따라 접두사를 최대 세 글자(예: MHC_[character_name]) 사용할 수 있습니다. 최상위 및 종속 에셋 폴더는 이를 생략하도록 선택할 수 있습니다.
다음은 편집 가능한 캐릭터의 폴더 구조 예시입니다.
.
└── [character_name]/
└── MHC_[character_name].uasset #MetaHuman Character asset/
└── [character_name] # Folder of dependent assets/
├── [...].uasset
캐릭터 어셈블리
패키징 준비가 완료된 캐릭터 어셈블리에는 캐릭터가 사용하는 모든 에셋이 폴더 하나에 포함되어 있습니다. 폴더 이름은 [character_name]으로 짓습니다.
캐릭터 어셈블리에는 레벨에서 캐릭터 인스턴스를 생성하는 데 사용되는 캐릭터의 블루프린트 에셋이 포함되어야 합니다. 이 에셋은 캐릭터의 이름을 딴 폴더에 저장해야 합니다.
캐릭터 어셈블리에는 Common 폴더가 함께 있어야 합니다.
어셈블리 동안 Common 폴더의 커스텀 위치를 지정하려면 먼저 '프로젝트 세팅'에서 '실험단계 워크플로 활성화(Enable Experimental Workflows)' 옵션을 설정해야 합니다.
다음은 캐릭터 어셈블리의 폴더 구조 예시입니다.
.
└── [character_name]/
├── [character_name]/
│ ├── BP_[character_name].uasset #Blueprint asset
│ ├── [...].uasset
캐릭터 어셈블리를 수동으로 생성하는 것은 권장되지 않습니다. 메타휴먼 캐릭터 에셋에 제공되는 어셈블리 옵션을 사용하여 필요한 모든 에셋이 올바르게 생성되었는지 확인합니다.
그룸
패키징 준비가 완료된 그룸에는 해당 그룸이 사용하는 모든 에셋이 폴더 하나에 포함되어 있습니다. 이 폴더의 이름은 [groom_name]으로 짓습니다.
그룸에는 그룸 바인딩 에셋의 단일 인스턴스가 포함됩니다. 이 에셋의 이름은 [groom_name] 폴더와 동일해야 합니다. 여기에는 메타휴먼 의상 아이템 에셋이 포함될 수 있습니다.
이 바인딩 에셋은 그룸과 그룸이 작성된 대상 스켈레탈 메시를 결합합니다. 이 바인딩 에셋을 다른 종속 에셋과 함께 폴더에 저장합니다. 이 폴더의 이름은 groom_name]과 동일합니다. 이 폴더에서는 다른 종속 에셋을 필요에 맞게 구성할 수 있습니다.
그룸 바인딩 에셋은 권장 에셋 명명 규칙에 따라 접두사를 최대 세 글자(예: G_[groom_name]) 사용할 수 있습니다. 최상위 및 종속 에셋 폴더는 이를 생략하도록 선택할 수 있습니다.
다음은 그룸 폴더 구조의 예시입니다.
.
└── [groom_name]/
├── GB_[groom_name].uasset #Groom Binding asset
├── WI_[groom_name].uasset #Optional MetaHuman Wardrobe Item asset
└── [groom_name]/ ##Folder of dependent assets
그룸은 그룸이 작성된 대상 스켈레탈 메시를 포함해야 합니다. 이는 그룸 에셋에 있는 커브의 위치와 일치해야 하며, UV는 메타휴먼 UV 좌표와 일치해야 합니다. 이 메시는 바인딩 에셋의 소스 및 타깃 스켈레탈 메시에 할당되어야 합니다.
그룸 에셋에 할당된 헤어 카드 메시는 그룸 에셋에 있는 커브의 위치와 일치해야 합니다.
그룸 에셋에 할당된 그룸 볼륨 메시는 그룸 에셋에 있는 커브의 위치와 일치해야 합니다.
스켈레탈 클로딩
패키징 준비가 완료된 스켈레탈 클로딩 조각에는 그 의상에 사용된 모든 에셋이 폴더 하나에 포함되어 있습니다. 이 폴더의 이름은 [clothing_name]으로 짓습니다.
스켈레탈 클로딩은 스켈레탈 메시 에셋의 단일 인스턴스입니다. 이 에셋의 이름은 [clothing_name] 폴더와 동일해야 합니다.
이 폴더에는 종속 에셋이 포함된 추가 폴더가 포함될 수 있으며, 이름은 [clothing_name] 폴더와 동일합니다. 이 폴더에서는 종속 에셋을 필요에 맞게 구성할 수 있습니다.
스켈레탈 메시 에셋은 권장 에셋 명명 규칙에 따라 접두사를 최대 세 글자(예: SKM_[groom_name]) 사용할 수 있습니다. 최상위 및 종속 에셋 폴더는 이를 생략하도록 선택할 수 있습니다.
다음은 스켈레탈 클로딩 제품 유형에 대한 폴더 구조의 예시입니다.
.
└── [clothing_name]/
├── SKM_[clothing_name].uasset #Skeletal Mesh asset
├── WI_[clothing_name].uasset #Optional MetaHuman Wardrobe Item asset
└── [clothing_name]/ #Folder of dependent assets
스켈레탈 클로딩은 메타휴먼 베이스 스켈레톤 또는 이와 매우 유사한 베리에이션을 사용해야 합니다. 스켈레톤의 본은 다시 부모가 되거나 다른 방식으로 재구성되지 않아야 합니다.
의상 클로딩
패키징 준비가 완료된 의상에는 해당 의상에 사용된 모든 에셋이 폴더 하나에 포함되어 있습니다. 이 폴더의 이름은 [clothing_name]으로 짓습니다.
의상 클로딩은 카오스 의상 에셋의 단일 인스턴스입니다. 이 에셋의 이름은 [clothing_name] 폴더와 동일해야 합니다.
이 폴더에는 종속 에셋이 포함된 추가 폴더가 포함될 수 있습니다. 이 폴더의 이름은 [clothing_name] 폴더와 동일합니다. 이 폴더에서는 종속 에셋을 필요에 맞게 구성할 수 있습니다.
의상 에셋은 권장 에셋 명명 규칙에 따라 접두사를 최대 세 글자(예: SKM_[groom_name])사용할 수 있습니다. 최상위 및 종속 에셋 폴더는 이를 생략하도록 선택할 수 있습니다.
다음은 의상 폴더 구조의 예시입니다.
.
└── [clothing_name]/
├── OA_[clothing_name].uasset #Outfit asset
├── WI_[clothing_name].uasset #Optional MetaHuman Wardrobe Item asset
└── [clothing_name]/ #Folder of dependent assets
의상 클로딩의 각 크기에는 해당하는 바디가 있어야 합니다.
다음 단계
에셋을 팹용으로 검증 및 패키징하는 방법을 살펴봅니다.