Houdini용 메타휴먼 그룸 스타터 키트는 메타휴먼 캐릭터에 적용하거나 팹에 퍼블리시할 수 있는 메타휴먼 호환 그룸을 제작하는 방법을 보여줍니다. 이 키트는 Houdini에서 그룸을 생성하고 스타일링하는 예제를 제공하며, 이 그룸은 익스포트한 다음 언리얼 엔진의 기본 그룸 구성에 통합할 수 있습니다.
여기에는 MH Groom Viewport Lights와 MH Groom Workspace와 같은 툴이 포함되어 있으며 그룸 작업에 바로 사용할 수 있는 Houdini 씬이 포함되어 있습니다. 또한 어트리뷰트 페인팅, 그룸 스타일링, 뷰포트 시각화, MH Groom Export 툴을 사용한 그룸 익스포트 같은 핵심 워크플로도 다룹니다.
전제 조건
Houdini 20.5 이상(Houdini Labs 포함)
설치된 Houdini용 메타휴먼 플러그인. 이 Houdini 플러그인이 설치되어 있지 않으면 씬을 열 때 오류가 발생합니다.
팹에서 다운로드한 Houdini용 메타휴먼 그룸 스타터 키트
언리얼 엔진 5.6 이상
Houdini 프로젝트
스타터 키트에는 Houdini_Groom_Template이라는 Houdini 프로젝트가 포함되어 있습니다. 이 프로젝트에는 .hip 포맷의 씬인 MH_Groom_Template이 포함되어 있습니다. 이 템플릿 씬에는 메타휴먼과 호환되는 그룸을 생성하고 익스포트하는 데 필요한 모든 주요 툴이 포함된 기본 그룸 그래프가 구성되어 있으며, Alembic 포맷의 그룸 파일을 다시 Houdini로 리임포트하는 작업도 수행할 수 있습니다.
Houdini 21 이전 버전에서 Houdini 씬을 열면 시작 시 vex strict 변수 를 언급하는 경고가 표시됩니다. 하지만 이 경우에도 작업이 중단되지는 않으며, Houdini 21 툴 종속성 때문입니다.
이 씬을 Houdini에서 열면 그룸 그래프가 다음 형태로 표시됩니다.
이 씬에는 여러 노드가 포함되어 있습니다. Skin이라는 이름의 Geo 노드,MH Groom Viewport Lights 툴, MH Groom Export 및 MH Groom Import 툴, 그리고 guides, strands, assembly_groom 이라는 이름의 여러 MH Groom Workspaces가 있습니다.
MH Groom Head
MH 그룸 헤드 HDA에는 두 가지 버전이 있습니다. 최신 템플릿 씬은 MH_Groom_Head(Houdini 21)를 로드하며, Houdini 20.5 사용자는 호환성을 위해 HDA를 MH_Groom_Head(Houdini 20)로 전환해야 합니다.
Geo 노드인 Skin 내부에는 MH Groom Head 툴이 있습니다. 이 노드에는 디폴트 그루밍 헤드 지오메트리인 MH Groom Head 지오메트리가 포함되어 있습니다. 여기에는 헤드 메시와 눈 에셋(안구, 눈 껍질, 눈 가장자리, 연골)이 포함되어 있습니다. 이 툴은 헤드 지오메트리를 편집하고 시각화할 수 있는 여러 파라미터를 제공합니다.
Houdini 21은 익스포트된 MH 캐릭터에서 커스텀 MH 헤드를 임포트하는 옵션을 제공합니다. 또한 커스텀 헤드 지오메트리를 .fbx 또는 .abc 파일로 임포트할 수 있습니다. 토폴로지가 MH Groom Head와 호환되는 경우 툴에서 올바르게 작동합니다.
미리 정의된 영역은 눈썹, 속눈썹, 헤어(두피), 페이셜 헤어(페이스의 털)와 같은 그루밍 지오메트리로 사용할 수 있습니다. 각 영역은 개별 출력을 갖습니다. 모든 영역과 전체 헤드 지오메트리는 서브디비전할 수 있습니다. 스킨 어트리뷰트가 포인트에 페인팅되는 경우에 이 작업을 권장합니다. 또한 Head 툴은 귀가 포함된 버전과 포함되지 않은 버전의 VDB를 제공합니다. 이는 다른 여러 툴이 작동하는 데 필요하며, 주로 콜리전 지오메트리로 사용됩니다. 툴의 VDB 탭에서 복셀 크기를 설정할 수 있으며, 대부분의 경우 디폴트 설정으로도 잘 작동합니다.
또한 Skin 노드는 어트리뷰트 페인팅을 위한 Houdini의 네이티브 툴인 Attribute Paint 노드도 포함합니다. 여기서는 Attribute Paint를 사용하여 두피 영역 포인트에 밀도 어트리뷰트 값을 페인팅했습니다.
MH Groom Viewport Lights
MH Groom Viewport Lights 툴은 뷰포트 시각화에 사용할 수 있는 다양한 렌더링 및 라이팅 프리셋이 포함된 유틸리티입니다. 또한 이 툴은 프리셋 커스터마이제이션을 위해 라이팅 및 카메라 세팅 파라미터와 여러 배경 색상을 제공합니다.
MH Groom Workspaces
또 다른 유틸리티 툴은 MH Groom Workspaces입니다. 이 툴은 그룸 그래프를 담는 유용한 컨테이너입니다. 작업 영역에는 여러 입력과 출력이 포함되어 있으며, 스트랜드, 가이드, 스킨, 스킨 VDB와 같은 다른 워크스페이스의 지오메트리를 레퍼런스하는 데 사용할 수 있습니다. 출력 노드는 그래프 내 다른 노드 또는 다른 MH 워크스페이스에서 레퍼런스할 수 있습니다.
노드는 SOP 지오메트리와 MH 워크스페이스를 레퍼런스할 수 있으며, 그루밍 헤드인 MH Groom Head를 초기화하는 기능도 제공합니다.
이 노드는 그루밍 그래프에서 출력되는 스트랜드를 보다 효과적으로 시각화하기 위해 다양한 헤어 셰이더 프리셋을 제공합니다.
사용자는 가이드, 스트랜드, 스킨에 적용할 어트리뷰트를 설정하고, 그룸 통계를 검토할 수 있습니다.
템플릿 씬에서 MH Groom Workspace는 다양한 용도로 여러 번 사용됩니다.
Guides 워크스페이스는 그룸을 위해 생성된 모든 가이드 데이터를 포함합니다. 여기에서는 가이드를 생성하고 형태를 다듬기 위해 Guide Groom 툴이 사용됩니다. Guides 워크스페이스는 Skin Geo 노드에서 Out Head 및 Out Skin VDB 노드를 레퍼런스합니다. 입력된 Skin 및 Skin VDB Null이 Guide Groom에 연결되어 있으며, Guide Groom의 출력은 워크스페이스 출력 노드에 연결됩니다.
Strands 워크스페이스는 스트랜드 그룸 그래프를 포함하며 Hair Generate 노드는 가이드 커브, 스킨 지오메트리, 스킨 VDB 입력, Guide Interpolation Mesh 노드를 사용하여 보간된 헤어를 스캐터링 및 생성합니다. Resample 노드는 커브별 포인트 수를 조정하는 데 사용되며, Guide Process 노드는 보간된 헤어를 스타일링하는 데 사용됩니다.
Assembly Groom 워크스페이스는 익스포트하기 전에 서로 다른 워크스페이스에서 생성된 여러 그룸 그래프를 어셈블하는 데 사용할 수 있습니다.
MH Groom Export
그룸 데이터는 MH Groom Export 툴을 사용하여 Alembic 파일로 익스포트됩니다.
MH Groom Import
MH Groom Import 툴은 Alembic 파일을 임포트하는 데 사용됩니다. 이 툴은 MH Groom Export 툴과 반대되는 오퍼레이션을 수행하며, 그룸을 다시 Z축 위쪽 방향으로 조정하고 Houdini 유닛에 맞게 스케일 조절 및 트랜스폼합니다.
또한 MH Groom Import 툴은 Stands Threshold와 Guides Threshold를 기준으로 오버랩되는 커브가 있는지 확인합니다. 사용자는 오버랩 문제에 대해 Ignore, Mark, 또는 Repair 중에서 원하는 작업을 선택할 수 있습니다.
언리얼 엔진 프로젝트
스타터 키트에 제공된 언리얼 엔진 프로젝트에는 기본 라이팅 구성이 적용된 레벨과 그룸 에셋, 그룸 바인딩, 메타휴먼 의상 설정 아이템이 할당된 MH Groom Head 스켈레탈 메시가 포함되어 있습니다.
그룸 에셋
Hair_MyGroom Alembic 파일에는 groom_width, groom_rootuv, groom_group_id, groom_id, groom_guides 기본 어트리뷰트가 포함되어 있습니다. Houdini의 MH Groom Export 툴을 사용하면 Alembic 파일과 함께 다른 어트리뷰트도 익스포트할 수 있습니다.
Hair_MyGroom 그룸 에셋은 Hair_MyGroom Alembic 파일을 언리얼 엔진에 임포트하여 생성되었습니다.
Hair_MyGroom 그룸 에셋에는 '머티리얼(Materials)' 탭에서 할당된 MI_Hair 머티리얼이 포함되어 있습니다. MI_Hair는 메타휴먼과 호환되는 헤어 머티리얼 인스턴스입니다.
그룸 바인딩
SKM_MH_Groom_Head는 Houdini MH Groom Head 메시에 해당하는 스켈레탈 메시로, MH Groom Head Houdini 툴에 제공되는 디폴트 그루밍 메시입니다.
SKM_MH_Groom_Head는 바인딩 에셋 내에서 소스 스켈레탈 메시 또는 타깃 스켈레탈 메시로 사용할 수 있습니다. 그룸 에셋을 스켈레탈 메시에 정확히 어태치하고, 함께 움직이며 디폼되도록 하려면 그룸 바인딩을 생성해야 합니다.
그룸을 SKM_MH_Groom_Head에 어태치하려는 경우, 이 스켈레탈 메시를 그룸 바인딩의 타깃 스켈레탈 메시에 할당해야 합니다.
그룸을 다른 메타휴먼 호환 헤드 스켈레탈 메시에 어태치하려는 경우, SKM_MH_Groom_Head를 소스 스켈레탈 메시에 할당하고 메타휴먼 호환 헤드 스켈레탈 메시를 타깃 스켈레탈 메시에 할당해야 합니다.
언리얼 엔진의 메타휴먼 크리에이터에서 그룸을 사용하려는 경우 SKM_MH_Groom_Head를 소스 및 타깃 스켈레탈 메시 모두에 할당해야 합니다.
그룸 바인딩 에셋을 설정한 후에는 그룸 에셋을 레벨의 헤드 스켈레탈 메시에 할당할 수 있습니다. SKM_MH_Groom_Head가 레벨에 임포트되고 그룸 컴포넌트가 여기에 할당됩니다. Groom Asset 슬롯에는 Hair_MyGroom 그룸 에셋이 할당되고, 'Binding Asset' 슬롯에는 GB_Hair_MyGroom이 할당됩니다. 이와 같이 설정하면 Hair_MyGroom이 SKM_MH_Groom_Head와 함께 움직이고 변형됩니다.
메타휴먼 패키지 파일
스타터 키트에는 메타휴먼 패키지 파일(.mhpkg)도 포함되어 있습니다. 이 포맷은 메타휴먼 호환 에셋을 패키징하여 팹에서 구매 및 판매할 때 사용됩니다. 이는 메타휴먼 호환 그룸 에셋을 패키징하여 판매할 수 있도록 준비할 때 어떤 식으로 그룸 에셋을 구성해야 하는지를 보여주는 예제입니다.
이 파일을 언리얼 엔진의 콘텐츠 브라우저에 드래그 앤 드롭하면 여기에 포함된 콘텐츠가 프로젝트에 추가됩니다.
프로젝트에 추가하면 Hair_MyGroom 폴더가 표시되고, 이 폴더에 그룸 바인딩(GB_Hair_MyGroom) 및 메타휴먼 의상 아이템(WI_Hair_MyGroom)이 포함되어 있습니다. 하위 폴더인 Hair_MyGroom에는 모든 종속 파일이 들어 있으며, 이 중에는 그룸 에셋(Hair_MyGroom)도 포함되어 있습니다. GroomMesh 하위 폴더에는 그루밍 헤드 스켈레탈 메시 SKM_MH_Groom_Head와 함께 관련 스켈레톤 및 피직스 에셋이 포함되어 있고, Materials 하위 폴더에는 모든 헤어 및 헤드 머티리얼, 머티리얼 함수, 텍스처가 포함되어 있습니다.
메타휴먼 의상 아이템 에셋에는 메타휴먼 크리에이터에서 캐릭터의 의상 설정에 사용될 그룸의 모든 관련 정보가 포함되어 있습니다. 이 에셋은 캐릭터가 코스튬으로 의상을 착용할 때 그룸을 커스터마이징할 수 있도록 해줍니다. 그룸 바인딩 에셋을 레퍼런스하여 그룸이 메타휴먼 캐릭터 헤드와 함께 움직이고 디폼되도록 보장합니다. 2차 색상과 머티리얼 오버라이드를 환경설정할 수 있습니다. 베이킹된 그룸 텍스처는 특정 LOD에 표시되도록 환경설정됩니다. 또한 MHC 그룸 섬네일 이미지와 디스플레이 이름도 메타휴먼 의상 아이템에서 설정됩니다.