MH Groom Builder
MH Groom Builder는 스트랜드 생성, 가이드 보간, 클럼핑 등 주요 그루밍 프로세스를 통합한 보간된 헤어 스타일링을 위한 중앙 집중식 워크스페이스입니다. 보간된 헤어는 스킨 지오메트리, 밀도 마스크 및 가이드 커브가 제공된 경우 자동으로 생성됩니다. 그룸의 각 스테이지는 마스크와 어트리뷰트를 사용하여 완전히 커스터마이징할 수 있으며, 이를 통해 헤어 셰이프와 밀도를 정밀하게 제어할 수 있습니다. Groom Builder는 보간된 헤어를 스타일링할 수 있도록 Houdini의 여러 표준 그루밍 툴을 하나의 노드로 통합합니다. 클럼핑은 몇 가지 어트리뷰트를 활성화하여 손쉽게 구현할 수 있습니다.
Groom Builder Masking을 사용하면 다양한 매핑 방식을 통해 헤어 밀도를 유연하게 제어할 수 있습니다. Density Attribute, Density Texture, Mask Texture와 같은 파라미터를 사용하면 표면 전반에서 헤어 비율을 조절할 수 있으며, 이를 통해 분포와 스타일링을 정밀하게 제어할 수 있습니다.
Strands Management는 Groom Builder 내에서 보간된 헤어가 생성되는 방식을 제어합니다.
Generate New Strands는 보간된 헤어를 사용하여 표면을 프로시저럴 방식으로 채우며, 지정된 마스크나 텍스처 입력을 통해 Groom Builder Masking을 사용하여 제어할 수 있습니다.
Use Strand Input은 Groom Builder에 입력된 헤어 스트랜드를 그대로 사용합니다.
Generate Strands는 헤어가 표면에 어떻게 분포되는지를 제어합니다. Density 파라미터는 스트랜드 수를 결정하며, 인접한 드롭다운 메뉴를 통해 어트리뷰트 또는 텍스처를 사용하여 값을 덮어쓸 수 있습니다. Root Scatter Seed는 밀도를 유지한 채 랜덤 분포를 조절하며, Root Relax Iterations는 연산을 더 소비하는 대신 스트랜드 배치를 한층 균등하게 만듭니다. Extra Scatter Iterations는 스캐터 결과를 보다 세분화하는 데 사용할 수 있습니다. Resample New Curves는 CV 수에 따라 커브 해상도를 조정하며, Add Input Guides to Output Strands는 원본 가이드를 최종 스트랜드 출력에 포함합니다.
Interpolation Options의 Number of Neighbors는 헤어를 보간할 때 사용되는 가이드 수를 정의합니다.
Parting은 그룸에서 가르마 라인의 사용 여부를 활성화 또는 비활성화합니다. 활성화한 경우, 가르마 라인을 사용하여 헤어 방향과 흐름에 영향을 줄 수 있습니다.
Color는 스트랜드의 배색을 제어합니다. Copy Workspace Color는 그룸 워크스페이스에서 컬러 세팅을 임포트하고, Color Ramp는 스트랜드의 루트부터 팁까지 적용할 컬러 그레이디언트를 정의합니다.
Width는 헤어 스트랜드의 두께를 제어합니다. Set Width는 너비 조정을 활성화하고, 'Width'는 전체 커브 너비를 정의합니다. Width Profile은 각 스트랜드의 루트부터 팁까지 너비를 셰이핑할 수 있습니다.
Clamp Zero Widths는 최솟값을 적용하여 스트랜드 너비가 0이 되지 않도록 방지합니다. 활성화한 경우, Width Minimum Value를 통해 허용되는 최소 커브 너비를 설정할 수 있고 디폴트는 0.000005입니다. 너비가 0인 지오메트리로 인해 발생할 수 있는 렌더링 또는 시뮬레이션 문제를 방지하는 데 도움이 됩니다.
Gain은 기존 커브 너비를 조정하기 위한 배수를 제공합니다. Use Gain을 활성화한 경우, Gain 값은 현재 너비를 스케일 조절합니다. 값이 1이면 변하지 않고, 1보다 작으면 줄어들고, 1보다 크면 늘어납니다.
Randomize는 커브 너비에 베리에이션을 적용합니다. Use Randomize를 활성화하면 지정된 'Fraction'의 커브에만 랜덤화가 적용됩니다. Random Seed는 랜덤 선택을 제어합니다. Random Min과 Random Max는 커브 너비에 곱해지는 랜덤 값의 범위를 정의합니다. Random Shape는 각 스트랜드의 루트부터 팁까지 이러한 베리에이션을 블렌딩하여 적용합니다.
Clumping은 가이드 입력을 기반으로 스트랜드가 어떻게 뭉쳐지는지를 제어합니다. Guide Clumping을 활성화하면 스트랜드가 입력 가이드에 직접 클럼핑되도록 할 수 있습니다. Clumping Subdivisions 세팅은 클럼핑 디테일 레벨을 결정하며 서브클럼핑 없음, 1차, 2차, 3차 클럼핑 중에서 선택할 수 있습니다.
Guide Clumping 서브 섹션에서 토글을 활성화하면 클럼핑이 활성화됩니다. Blend 파라미터는 클럼핑 이펙트의 전체 세기를 조절하며, 인접한 드롭다운 메뉴를 통해 어트리뷰트를 사용하여 오버라이드할 수 있습니다.
Primary를 선택하면 프로시저럴 1차 클럼핑이 활성화되어 헤어 스트랜드의 주요 그룹이 형성되며, 이후 2차 및 3차 클럼핑은 이 구조를 기반으로 생성됩니다. Blend 파라미터는 클럼핑의 전반적인 영향을 조절하며, 드롭다운 메뉴를 통해 어트리뷰트를 사용하여 오버라이드할 수 있습니다.
가이드 프로세스 Frizz 및 Length에 대한 자세한 내용은 Houdini 문서를 참고하세요. Spread 및 Scraggle에 대한 추가 가이드는 MH Spread 및 MH Scraggle 문서를 참고하세요.
Secondary를 선택하면 프로시저럴 2차 클럼핑이 활성화되며, 1차 클럼프 내에 보다 세밀한 클러스터링을 추가합니다. Blend 파라미터는 이펙트의 전반적인 강도를 조절하며, 드롭다운 메뉴를 통해 어트리뷰트를 사용하여 오버라이드할 수 있습니다.
Tertiary를 선택하면 프로시저럴 3차 클럼핑이 활성화되며, 2차 클럼프 내에 가장 세밀한 클러스터링을 추가합니다. Blend 파라미터는 이펙트의 세기를 제어하며, 드롭다운 메뉴를 통해 어트리뷰트를 사용하여 오버라이드할 수 있습니다.
Strand Styling은 헤어 스트랜드를 셰이핑하고 디테일을 조정할 수 있는 추가 제어 기능을 제공합니다. Flyaways, Frizz, Length 등의 파라미터는 Houdini 가이드 프로세스 툴을 레퍼런스하며, Around Spread, Lift Spread, Scraggle Noise는 각각의 MH Groom 툴을 레퍼런스합니다.
이러한 세팅을 통해 가이드 기반 또는 프로시저럴 스타일링 방식에 따라 스트랜드 비헤이비어와 셰이프를 정밀하게 조정할 수 있습니다.
Collisions는 Skin VDB를 사용하여 스트랜드와 스킨 지오메트리가 교차하는 것을 해결할 수 있는 제어 기능을 제공합니다.
Transfer Attributes는 포인트, 버텍스, 프리미티브 및, 디테일 어트리뷰트를 지정하여 스킨 및 가이드 어트리뷰트를 스트랜드 출력으로 복사할 수 있으며, 시뮬레이션 또는 셰이딩에서의 정밀한 제어를 위해 타이트함 어트리뷰트를 선택적으로 추가할 수도 있습니다.
Guides Output Management는 어떤 가이드 데이터가 전달될지를 제어합니다. 입력 가이드는 커스텀 또는 디폴트 그룹 이름으로 보존할 수 있으며 1차, 2차 및 3차 클럼핑과 관련된 가이드도 별도의 그룹으로 포함할 수 있습니다. 원본 가이드에 포함된 가르마 라인도 출력에 포함하여 유지할 수 있습니다.
Visualize는 클럼프 시각화를 위한 디버깅 및 표시 옵션을 제공합니다. Debug Display Options에서는 None, Primary, Secondary 또는 Tertiary 클럼프 중에서 표시할 클럼프를 선택할 수 있습니다.
Strands or Guides에서는 클럼프 시각화를 스트랜드, 가이드 또는 둘 모두에 적용할지를 지정할 수 있습니다.
Stats는 그룸 관련 데이터에 대한 비저빌리티를 제공합니다. Show Groom Data를 활성화하면 내부 스트랜드 및 가이드 스트림에서 추출된 토폴로지 정보가 표시되며, 이는 디버깅 및 분석에 유용합니다.
MH Groom Clump Builder
MH Groom Clump Builder는 커브 클럼핑 및 스타일링 기능을 제공하며, 스트랜드 생성 및 관리도 지원합니다. 가이드 커브는 가이드 기반 그룹화 또는 1차, 2차, 3차 클럼프를 통해 클럼핑할 수 있으며 타이트함, 컬링, 트위스트와 같은 스타일링 옵션도 사용할 수 있습니다. 스트랜드는 입력에서 관리하거나 생성할 수 있습니다.
이 노드는 MH Groom Builder와 유사하지만 헤어 보간 세팅은 포함하지 않습니다. 자세한 내용은 Groom Builder 문서의 클럼핑 섹션을 참고하세요.
MH Groom Multi Clump
MH Groom Multi Clump는 MH Groom Builder에서 사용되는 클럼핑 시스템으로서 1차, 2차, 3차 클럼핑을 완벽하게 지원합니다. 이는 가이드 커브를 클럼핑하며, 표준 헤어클럼프 SOP를 감싸는 래퍼 역할을 합니다. 이 노드를 사용하면 타이트함, 컬링, 트위스트 등 다양한 클럼프 셰이프를 생성하고 이를 클럼프 전반에 걸쳐 분산하여 클럼프 패턴에 자연스러운 베리에이션을 손쉽게 추가할 수 있습니다.
MH Groom Clump Tighter
MH Groom Clump Tighter는 가이드나 스킨에 적용된 Mask Attribute를 사용하여 클럼프를 더 타이트하게 만들어 클럼프 정의를 국부적으로 제어할 수 있도록 합니다.
MH Groom Scraggle
MH Groom Scraggle은 Houdini의 Attribute Noise 노드와 유사한 방식으로 커브에 3D 노이즈 기반 디포메이션을 적용합니다.
이 노드는 그룸에 자연스러운 베리에이션과 불규칙성을 간편하게 추가할 수 있는 효율적인 방법을 제공합니다.
MH Groom Spread
MH Groom Spread는 커브를 좌우 및 수직 방향으로 스프레드하여 셰이프를 조정합니다. Around Spread는 루트 회전 축을 중심으로 커브를 좌우 방향으로 스프레드합니다.
Lift Spread는 커브를 위 또는 아래 방향으로, 스킨에 접선 방향으로 이동시킵니다. 이 비헤이비어는 Bend Guide Process 방식에 기반합니다.
MH Groom Width
Width는 헤어 스트랜드의 두께를 제어합니다. Set Width는 너비 조정을 활성화하고, 'Width'는 전체 커브 너비를 정의합니다. Width Profile은 각 스트랜드의 루트부터 팁까지 너비를 셰이핑할 수 있습니다.
Clamp Zero Widths는 최솟값을 적용하여 스트랜드 너비가 0이 되지 않도록 방지합니다. 활성화한 경우, Width Minimum Value를 통해 허용되는 최소 커브 너비를 설정할 수 있고 디폴트는 0.000005입니다. 너비가 0인 지오메트리로 인해 발생할 수 있는 렌더링 또는 시뮬레이션 문제를 방지하는 데 도움이 됩니다.
Gain은 기존 커브 너비를 조정하기 위한 배수를 제공합니다. Use Gain을 활성화한 경우, Gain 값은 현재 너비를 스케일 조절합니다. 값이 1이면 변하지 않고, 1보다 작으면 줄어들고, 1보다 크면 늘어납니다.
Randomize는 커브 너비에 베리에이션을 적용합니다. Use Randomize를 활성화하면 지정된 Fraction의 커브에만 랜덤화가 적용됩니다. Random Seed는 랜덤 선택을 제어합니다. Random Min과 Random Max는 커브 너비에 곱해지는 랜덤 값의 범위를 정의합니다.
MH Groom Framing
MH Groom Framing은 커브의 방향, 스케일 및 curveu 어트리뷰트를 계산하고 조작합니다. 이 노드는 MH Groom Braid 툴의 빌딩 모듈로 사용됩니다.
Add Orientation Attributes를 토글하여 켜면 커브에 방향 어트리뷰트가 추가됩니다.
Add Scale Attribute를 토글하여 켜면 커브에 스케일 어트리뷰트가 추가됩니다. 기본적으로 이 툴은 pscale 어트리뷰트를 추가합니다. 예를 들어 출력 커브를 MH Groom Guide to Tube 노드에서 튜브를 생성하는 데 사용할 경우, 스케일 어트리뷰트의 이펙트를 확인할 수 있습니다. 튜브의 너비 스케일은 커브의 pscale 어트리뷰트에 의해 정의됩니다.
Add Curve U Attribute는 각 커브의 루트부터 팁까지 이어지는 모든 포인트에 대해 0~1 범위의 유닛 커브 파라미터 값을 저장하는 curveu 포인트 어트리뷰트를 생성합니다. 루트 = 0, 팁 = 1입니다.
MH 그룸 브레이드
MH Groom Braid는 땋은 머리 그룸을 생성하는 데 사용됩니다. 땋은 머리의 셰이프, 빈도, 스트랜드 프로퍼티, 무작위성을 완전히 제어할 수 있어 다양한 땋은 머리 스타일을 연출할 수 있습니다.
땋은 머리에 사용되는 스트랜드 수는 Num Strands 파라미터로 정의됩니다. 땋은 머리의 전체 셰이프는 Profile로 제어되며, 이 값은 땋은 머리의 스케일을 설정하고 Profile Attribute(디폴트: pscale)를 통해 오버라이드할 수 있습니다.Width와 Height는 땋은 머리의 물리적 크기를 정의하며, Profile Scale, Width Scale 및 Height Scale은 이 값들이 땋은 머리 길이에 따라 어떻게 변화하는지를 제어합니다.
Samples Per Cycle은 하나의 땋은 머리 사이클을 구성하는 포인트 수를 설정하여 반복 빈도를 제어합니다. Cycle Density는 커브를 따라 배치되는 사이클 수를 설정하며, Cycle Offset은 이러한 사이클이 시작되는 위치를 이동시킵니다. Cycle Scale은 땋은 머리 전체 길이를 따라 밀도를 조절하여 다이내믹한 베리에이션을 연출합니다.
Thickness, Width, Height와 같은 스트랜드별 프로퍼티는 땋은 머리에서 각 스레드의 크기를 정의합니다. 이러한 프로퍼티는 Thickness Scale, Width Scale, Height Scale을 사용하여 스트랜드 길이를 따라 조절할 수 있습니다. 각 땋은 머리 사이클 내에서 두께를 조절하는 Thickness Squeeze와 이러한 베리에이션을 전체 스트랜드에 걸쳐 적용하는 Thickness Squeeze Scale을 사용하면 추가적인 셰이핑이 가능합니다.
Add Noise를 사용하면 땋은 머리 전체에 노이즈 기반 베리에이션을 적용하여 랜덤성을 적용할 수 있습니다.
MH 그룸 번
MH Groom Bun은 그룸 번을 위한 가이드 커브를 생성하고 스타일링합니다. 포인트에서 커스터마이징 가능한 커브를 생성하며, Twist 또는 Donut 스타일 중에서 선택할 수 있습니다. 이 노드는 전체적인 셰이프, 크기, 구조를 조절할 수 있는 컨트롤을 제공하여 다양한 그룸 번 모양에 맞게 유연하게 조정할 수 있습니다.
번은 Probability 또는 Skin Attribute를 사용하여 분포시킬 수 있으며, Variants 파라미터를 사용하여 스타일 베리에이션 수를 정의합니다.
Shape Controls는 초기 번 가이드 커브가 생성되는 방법을 정의합니다. 선택한 Generation Style에 따라 가이드 레이아웃이 결정됩니다. Single Center는 중앙 포인트에 단일 가이드를 배치합니다. Edge는 중앙에서 정의된 반경을 따라 가이드를 고르게 분포시킵니다. Scatter는 중앙 포인트 주변에 가이드를 랜덤으로 배치하며, 가이드 배치 시 이완 정도 및 시드 값을 제어할 수 있는 추가 파라미터가 제공됩니다.
Bun Type에는 Twist와 Donut의 두 가지 스타일이 제공되며, 각 스타일은 고유한 셰이핑 파라미터를 갖습니다.
MH 그룸 콘로우
MH Groom Cornrow는 스킨 위에 가이드를 생성하며, 이 가이드는 땋은 머리에 피딩되어 콘로우 이펙트를 만듭니다. 커브는 Distance Around Curve, Custom Mask Attribute 또는 이 둘이 결합된 Combined 방식으로 분포시킬 수 있습니다.
디폴트는 Distance Around Curve입니다. Density Distance로 지정된 거리 내에서 커브를 스캐터링합니다.
Custom Mask Attribute는 스킨에 페인팅된 어트리뷰트 영역 내에서 커브를 스캐터링하며, 이 영역은 Density Mask Attr에 의해 정의됩니다.
Combined 방식은 Distance Around Curve 및 Custom Mask Attribute 두 방식의 조합으로 정의된 영역 내에 커브를 스캐터링합니다.
Combined 기능을 사용하면 Distance Around Curve 방식으로 배치된 커브에서 Custom Mask Attribute 영역을 제외할 수 있습니다.
가이드 분포는 자연스럽고 랜덤한 배치 효과를 얻기 위해 'Perlin', 'Simplex', 'Worley Cellular'와 같은 프로시저럴 노이즈 타입을 사용하여 수정할 수 있습니다.
가이드 셰이프 조작에는 팁 오프셋, 벤딩, 교차 블렌딩 등이 포함되며, 그 외에도 길이 기반 커브 삭제, 스킨 거리 기반 푸시, 정확한 가르마 라인 컨트롤과 같은 고급 오퍼레이션도 제공됩니다.
Attributes & Appearance 섹션은 커브 두께를 관리하고, 셰이프에 랜덤 베리에이션을 적용하고, 후속 처리 및 추가 커스터마이제이션을 지원하기 위해 clumpid 및 braidid와 같은 핵심 프리미티브 어트리뷰트를 출력합니다.
MH Groom Guide Fill
MH Groom Guide Fill은 튜브 기반 가이드 커브를 프로시저럴 방식으로 생성하며, 너비 스케일링, 트위스트, 분포 밀도, 어트리뷰트 출력을 파라미터로 제어할 수 있어 정밀한 셰이핑 및 커스터마이제이션이 가능합니다.
Add Fill Width 옵션을 토글하여 켜면 생성된 커브에 pscale 어트리뷰트가 추가됩니다. 'Fill Radius'는 채우기 비율이 적용되는 영역의 반경을 제어합니다. Scale by Attribute는 생성된 커브에 pscale_gain을 추가합니다. 이 값은 Randomize 파라미터를 사용하여 랜덤화할 수 있습니다.
생성된 커브는 Twist 기능을 사용하여 추가로 수정할 수 있습니다. Roll은 커브가 튜브를 중심으로 몇 도 회전할지를 제어합니다. Full Twist는 360도 전체 회전 횟수를 설정합니다. Partial Twist는 360도에 미치지 않는 회전입니다. Twist Ramp는 가이드 커브의 길이를 따라 커브가 얼마나 타이트하게 트위스트되는지를 제어합니다.
Attributes & Appearance 탭에서 Thickness Attribute를 토글하여 켜면 생성된 가이드 커브에 width 파라미터가 추가됩니다. Thickness는 커브 두께를 설정하며, Thickness Profile은 루트부터 팁까지 커브 길이를 따라 너비를 수정합니다.
Primitive Attributes는 가이드 스트림에 출력할 프리미티브 어트리뷰트의 목록입니다. Point Attributes는 가이드 스트림에 출력할 포인트 어트리뷰트의 목록입니다. Output Curve U를 토글하여 켜면 curveu 파라미터가 생성된 가이드 커브에 추가됩니다.
Root Guides는 가이드의 루팅을 활성화하거나 비활성화합니다.
이 툴은 균등하고 커스터마이징 가능한 분포, 트위스트 디포메이션, 랜덤한 너비 베리에이션 등 스타일화된 셰이핑이 가능한 구조적인 그룸을 생성하는 데 이상적입니다.
MH Groom Guide to Tube
MH Groom Guide to Tube는 가이드 커브를 편집 가능한 튜브 지오메트리로 변환하며, NURBS 표면 또는 폴리곤을 비롯한 출력 포맷을 지원합니다. 이 노드는 MH Groom Braid 툴의 기본 빌딩 모듈로 사용됩니다.
'Cross-section Divisions'는 튜브의 단면 분할 수를 제어합니다. Width Scale은 입력 커브에 pscale 어트리뷰트가 정의되어 있는 경우 튜브의 지름을 스케일링합니다. 입력 커브에 'pscale' 어트리뷰트가 정의되어 있지 않으면 Add Width가 활성화됩니다. 'Add Width'가 활성화된 상태에서는 Width 어트리뷰트가 기본적으로 0.01로 설정됩니다. 값을 변경하면 튜브 지름이 스케일 조절됩니다. Width Ramp는 튜브 길이 방향을 따라 지름 스케일을 제어합니다.
Add Twist는 입력 커브의 포인트 탄젠트를 따라 튜브를 트위스트합니다. Full Twists는 튜브에 적용되는 전체 회전(360도 기준) 횟수를 정의합니다. Detangle Width는 엉켜 있는 튜브를 분리하여 교차되는 것을 방지하는 옵션을 활성화합니다. Previous Width Scale은 교차를 방지하면서 콜리전 간격을 보완하기 위해 엉켜 있는 튜브의 크기를 확장합니다.
Collision Thickness는 엉킨 튜브들 사이의 콜리전 오프셋의 정도를 정의하며, Collision Smooth는 튜브 너비 스케일 값을 매끄럽게 보정합니다.
Skin Peak Distance는 튜브를 스킨 지오메트리 표면에서 바깥쪽으로 푸시합니다. Output에서는 튜브 지오메트리의 타입을 NURBS Surface 또는 Polygons 중에서 선택할 수 있습니다.
Attributes from Guides는 튜브가 가이드에서 상속할 모든 어트리뷰트를 정의하고 나열합니다.
MH Groom Tube Fill
MH Groom Tube Fill은 튜브 지오메트리 내부에 편집 가능한 커브를 생성하고 스타일링합니다. 이 노드는 커브 분포, 클럼핑, 트위스트, 너비 셰이핑, 어트리뷰트 출력 등을 세밀하게 제어할 수 있으며 땋은 머리, 번, 기타 튜브 기반 스타일과 같은 구조적인 그룸을 생성하는 데 이상적입니다.
Distribution 섹션에서는 커브 생성 세팅이 Probability 또는 Skin Attribute를 사용하여 배포됩니다.
Scatter 섹션에서 튜브 내부에 분포되는 커브는 Force Total Count 및 Density의 두 가지 모드로 정의할 수 있습니다.
Force Total Count는 생성할 커브 수를 고정된 값으로 설정하며, Curve Count 파라미터를 통해 제어됩니다.
Density 모드는 정의된 밀도 값을 기준으로 커브를 분포시키며, 이 값은 표면당 커브 수로 해석됩니다.
Create Clumps를 활성화하면 커브가 정의된 클럼프 영역으로 그룹화됩니다. 클럼프 수는 Clump Count로 설정됩니다. 클럼프 기반의 트위스트 및 오프셋 조정은 Twist 섹션에서 처리됩니다.
Twist By Clump는 트위스트 기능을 토글하고 튜브 중앙을 기준으로 각 클럼프에 적용합니다. Twist Angle은 도 단위로 회전 각도를 정의하며, Full Twist는 각 클럼프에 적용할 전체 회전 횟수를 설정합니다.
Push by Clump는 전체 클럼프를 튜브 중앙에서 바깥쪽으로 이동시킵니다. Push는 오프셋 양을 정의하며, Push Ramp와 Push Depth를 사용하여 는 커브와 방사상 위치에 따라 푸시하는 세기를 조절합니다.
MH Groom Cut Root
MH Groom Cut Root는 커브의 루트 위치를 랜덤화합니다. 이 기능은 루트에서 시작되는 커브의 길이를 잘라내고, 루트를 스킨 지오메트리에 다시 투영하는 방식으로 구현됩니다. 자세한 내용은 MH Groom Cornrows를 참고하세요.
MH Groom Cut Root는 커브를 루트에서 트리밍하고 다시 스킨 지오메트리에 투영하여 커브 루트 위치에 베리에이션을 주는 데 사용됩니다. 이렇게 하면 루트 배치에 미묘한 랜덤성과 분산이 더해져 그룸이 보다 자연스럽고 덜 균등하게 표현됩니다.
Range 파라미터는 루트에서 얼마나 떨어진 위치에서 커브를 자를지를 정의합니다. 이 거리는 커브 길이를 따라 측정되며, 잘린 루트는 스킨에 다시 투영됩니다. Rate는 이 오퍼레이션이 적용되는 커브의 퍼센티지를 제어하며, 0~1 사이의 값으로 지정됩니다. Randomize를 활성화하면 단일 Range 값이 Min Range 및 Max Range로 바뀌며, 커브마다 서로 다른 잘라내기 거리를 적용할 수 있습니다. 이로 인해 루트 배치에 더 많은 불규칙성이 추가됩니다. Root Projection 파라미터는 새로운 루트 위치가 스킨에 다시 투영되는 방식을 제어하며, 잘린 루트가 표면에 통합되는 방식을 결정합니다.
MH Groom Rooter
MH Groom Rooter는 커브 루트를 잘라내고 스킨 지오메트리에 투영하여 스프레드합니다. 이 노드는 번, 땋은 머리 및 콘로우 스타일의 루트를 사실적으로 생성하는 데 사용됩니다.
Cut Guides 옵션은 스킨 지오메트리 내에 있는 커브 루트 및 다음 포인트를 제거합니다. Cut Method 파라미터는 두 가지 옵션을 제공합니다. Delete Points Inside Skin (faster): 스킨 내부에 있는 모든 포인트를 제거하지만 일부 커브가 표면 위에 떠 있는 상태로 남을 수 있습니다.
Boolean Curves with Skin (slower): 부울 연산을 사용하여 커브와 스킨 사이의 정확한 교차점에 새로운 루트 포인트를 생성합니다.
Project Roots to Skin을 활성화하면 모든 커브 루트가 스킨 표면에 직접 투영됩니다. 이 기능을 활성화하면 Expand Roots를 사용할 수 있으며, 루트가 투영 포인트에서 방사상으로 스프레드된 후 다시 표면에 재투영됩니다.
Piece Attribute는 어떤 커브들을 함께 그룹화하여 하나의 루트로 지정할지를 정의합니다. Density Radius는 루트가 스킨 위에서 스프레드할 수 있는 영역의 반경을 설정합니다. Density Falloff는 이 반경의 바깥쪽 가장자리로 갈수록 스프레드 이펙트가 얼마나 약해지는지를 제어합니다.
Smooth 옵션은 커브에서 포스트 루트 스무딩을 활성화합니다. 이 이펙트는 원래 커브와 새로 투영된 루트 사이의 영역에만 영향을 미칩니다. Smoothing Iterations는 스무딩 오퍼레이션을 몇 번 반복할지를 결정하며, Smoothing Location은 해당 커브 구간 중 어느 위치에 스무딩 이펙트를 집중할지를 지정합니다.
Push Amount는 루트로 지정된 커브 부분을 스킨 지오메트리에서 약간 바깥쪽으로 밀어내어, 시각적인 관통 또는 클리핑 현상을 줄이는 데 도움이 됩니다.
MH Groom Doctor
MH Groom Doctor는 그룸 워크스페이스의 마지막 단계에 사용되는 노드로, 스트랜드 및 가이드를 포함한 최종 커브가 깨끗하고 유효하며, 익스포트 또는 렌더링 전에 적합한 상태인지 확인하는 데 사용됩니다. 이 노드는 일반적인 그루밍 문제를 스캔하고 각 문제에 대해 'Ignore', 'Mark' 또는 'Repair' 중 하나를 선택할 수 있게 해줍니다.
모든 경고 타입에 대해 다음 세 가지 조치 중에서 선택할 수 있습니다. Ignore: 검사 자체를 건너뛰고, 아무 문제도 보고하지 않습니다. Mark: 문제가 있는 지오메트리에 플래그를 지정하고, 사용자가 지정한 이름의 그룹에 추가합니다. 경고 메시지를 표시하지만 수정은 하지 않습니다. Repair: 가능한 경우 문제가 있는 지오메트리를 자동으로 수정하도록 시도합니다.
Point Checks 섹션에서는 NaN(숫자가 아닌 값)이 기본적으로 식별되고 제거됩니다. 이러한 문제가 되는 포인트는 탐지하기 어려운 경우가 많지만, 시스템이 불안정해질 수 있습니다. 어떠한 커브에도 속하지 않는 연결되지 않은 포인트도 제거됩니다. 너비 값이 0인 포인트는 마킹됩니다. 이러한 포인트는 보이지 않거나 렌더링 문제를 유발할 수 있기 때문입니다.
Primitive Checks에서는 다양한 문제가 처리됩니다. 프로시저럴 오퍼레이션의 결과로 생성될 수 있는 길이가 0인 커브는 삭제됩니다. 가이드 길이를 설정할 때 발생할 수 있는 단일 포인트 커브도 삭제됩니다. 포인트가 255개를 초과하는 커브는 플래그가 지정되며, 이는 언리얼과 같은 게임 엔진의 제한 사항과 호환성을 보장하기 위한 것입니다. 루트 위치가 서로 겹치는 커브는 식별되어 하나만 남기고 나머지는 제거됩니다. 이 문제는 일반적으로 그룸 지오메트리를 병합할 때 자주 발생합니다. 가이드와 스트랜드에 대해 오버랩 한계치를 개별적으로 조정할 수 있으며, 스트랜드에 대해서는 오버랩 테스트를 켜거나 끌 수 있습니다.
모든 포인트의 너비가 0인 커브는 셰이딩 모드에서 사실상 보이지 않기 때문에 삭제됩니다. 비저빌리티 SOP 또는 가이드 그룸 SOP를 통해 숨겨진 커브는 자동으로 표시 상태로 전환됩니다. id 어트리뷰트가 고유하지 않은 커브는 고유성을 유지하기 위해 id를 프리미티브 인덱스를 사용하여 오버라이드하여 수정합니다. name 어트리뷰트가 없는 커브는 마킹만 됩니다. 명명은 마스킹 또는 파티셔닝에 유용하지만 필수는 아닙니다. 루트가 스킨 또는 서브스트레이트에 위치하지 않은 디태치된 커브도 마킹됩니다. 디태치된 루트를 탐지하는 한계치는 Detached Threshold 파라미터를 사용하여 조정할 수 있습니다.
Attributes & Stats Checks에서 필요한 skinprim 및 skinprimuv 어트리뷰트가 누락된 커브는 재계산을 통해 복구됩니다. Recompute Skin Attributes가 활성화되어 있는 경우, 해당 어트리뷰트가 이미 있더라도 다시 계산됩니다. 가이드 수가 현재 권장되는 상한인 3,000개를 초과하면 노드에서 경고가 표시됩니다. 또한 가이드 스트림에 width 어트리뷰트가 포인트 또는 디테일 레벨 중 어느 쪽에도 있지 않은 경우 경고가 표시됩니다.
MH Groom Merge
이 노드는 입력으로 받은 여러 개의 그룸 지오메트리를 병합하며, 그룸 관련 어트리뷰트가 올바르게 유지되도록 보장합니다. 여러 입력을 하나의 지오메트리 스트림으로 결합하여 후속 처리에 사용할 수 있게 합니다. 나중에 네트워크에서 병합된 지오메트리의 각 부분을 구분하려면 Group 노드를 미리 사용하여 각 입력 지오메트리에 명명된 그룹을 할당할 수 있습니다.
동일한 클럼프 어트리뷰트 이름과 값을 가진 여러 커브 세트를 병합할 경우, 클럼프 어트리뷰트 ID를 그대로 유지하면서 고유하게 처리합니다. 이 노드는 최대 30개의 입력을 병합할 수 있습니다.
이 노드를 우회하면 첫 번째 입력만 익스포트됩니다. 이때 병합 오퍼레이션은 수행되지 않습니다.
MH Groom Parting Lines Merge
이 노드는 입력된 커브에서 가르마 라인을 병합하고 처리하여 헤어 보간 및 스타일링에 사용할 수 있는 통합된 가르마 라인 표현을 생성합니다. 이 노드는 그룹화, 반경 기반의 영향 조절, 세기 제어 및 퍼포먼스 최적화를 위한 선택적인 리샘플링 기능을 지원합니다.
Group 파라미터는 입력 커브 중 어떤 그룹을 가르마 라인으로 사용할지를 정의합니다. 기본적으로는 노드가 partinglines라는 이름의 그룹을 찾습니다.
Parting Properties에서 Radius는 각 가르마 라인의 영향 반경을 설정하며, 해당 라인이 표면 위에서 헤어 보간에 영향을 미칠 수 있는 거리를 결정합니다. Strength는 가르마 라인이 가이드 비헤이비어에 얼마나 강한 영향을 미치는지를 제어합니다. 값이 1.0이면 가르마 라인의 한쪽에 있는 가이드는 다른 쪽의 헤어에 전혀 영향을 미치지 않게 되어 뚜렷한 분리 라인(가르마)를 형성하게 됩니다.
MH Groom Mixer
이 노드는 두 그룸 입력 사이의 커브 셰이프를 블렌딩하여 가이드 위치를 매끄럽게 보간할 수 있게 해줍니다. 어트리뷰트 기반 일치, 마스크 기반 제어, 커브 길이를 따라 적용되는 램프 기반 블렌딩을 지원하므로 그룸 베리에이션 간 전환이나 프로시저럴 편집 레이어링 작업에 유용합니다.
Group은 영향을 미칠 프리미티브 서브셋을 지정합니다. 이 그룹 내의 커브만 블렌딩됩니다.
Match Primitive By Attribute를 사용하면 프리미티브의 순서가 아닌 일치하는 프리미티브 어트리뷰트를 기준으로 블렌딩할 수 있습니다. 이는 두 입력이 인덱스로 정렬되어 있지 않더라도 가이드 블렌딩이 올바르게 작동하도록 보장합니다. 일치에 사용되는 어트리뷰트는 Match Attribute에 의해 정의되며, 디폴트는 id입니다. 이 어트리뷰트는 일반적으로 가이드 및 스트랜드에 대해 그루밍 툴에서 자동으로 생성됩니다.
Blend는 두 그룸 간의 전체적인 블렌딩 세기를 제어합니다. 'Skin Attribute' 옵션을 선택하여 스킨 어트리뷰트를 통해 이 값을 오버라이드할 수 있습니다. 오버라이드되면 Blend Attribute는 블렌드 값을 제어하는 데 사용할 스킨 어트리뷰트를 지정합니다.
MH Groom Cull
MH Groom Cull은 다양한 조건에 따라 커브 지오메트리를 선택적으로 숨기거나 제거하는 데 사용됩니다. 이러한 조건에는 그룹 멤버십, 복셀화, 확률, 길이, 다양한 어트리뷰트 값 등이 포함됩니다. 이 툴은 지오메트리를 삭제하지 않고도 가이드 또는 스트랜드 배치의 밀도, 비저빌리티 및 디테일을 제어해야 하는 그루밍 워크플로에 유용합니다.
Selection의 Group 파라미터는 작업을 적용할 프리미티브의 서브셋을 정의합니다. Keep Not Selected는 선택을 반전하여 정의된 그룹 외부의 모든 커브에 오퍼레이션을 적용합니다.
Voxel 섹션에서 Use Voxel을 활성화하면 복셀 기반 컬링이 활성화됩니다. Search Points Gain은 포인트 조회 반경의 배수를 설정합니다. 'Voxel Size'는 생성되는 VDB 볼륨의 해상도를 결정하며, 이보다 작은 포인트는 복셀로 변환되지 않습니다. Point Radius Scale은 변환 전에 pscale 어트리뷰트를 사용하여 파티클 크기에 곱해집니다.
Probability에서 Use Probability는 랜덤 컬링을 활성화합니다. Fraction은 영향을 받는 커브 수를 정의합니다. 값이 1이면 모든 커브가 제거되고, 0.5는 절반, 0은 전혀 제거하지 않습니다. Random Seed는 랜덤 선택의 분포를 변경합니다.
Length 섹션에서는 커브 길이를 기준으로 컬링이 허용됩니다. Use Length를 활성화하면 이 모드가 활성화됩니다. Mode는 지정된 Relative Length보다 짧은 커브 또는 긴 커브를 컬링할지 정의합니다. Length Metric은 길이를 측정하는 방식을 제어하며, Arc Length(커브를 따라 측정) 또는 Root To Tip(시작 포인트와 끝 포인트 간의 단방향 거리) 중에서 선택할 수 있습니다.
어트리뷰트 기반 컬링의 경우 Guide Attribute를 사용하면 가이드별 어트리뷰트를 기준으로 커브를 제어할 수 있습니다. Use Guide Attribute는 이를 활성화하며, Guide Attribute Name은 사용할 어트리뷰트를 설정합니다. 디폴트는 cullmask입니다.
Mode에서는 Equals, Greater Than, Less Than, Probability와 같은 비교 옵션을 제공합니다.
Value는 한계치를 설정하며, 'Probability' 모드를 사용하는 경우 Random Seed를 통해 결과에 베리에이션을 적용할 수 있습니다.
비슷하게, Skin Attribute를 사용하면 스킨 레벨 데이터에 따라 컬링할 수 있습니다. Skin Attribute를 사용하면 이 기능이 토글되며, Skin Attribute Name은 입력 어트리뷰트를 설정합니다(디폴트: cullmask). Mode, Value 및 Random Seed는 가이드 어트리뷰트 컬링과 동일하게 작동합니다.
Clump Attribute에서 컬링은 클럼프별 데이터를 기반으로 합니다. Clump Attribute를 사용하면 이 옵션이 활성화되고, Clump Attribute Name은 어트리뷰트를 지정합니다(디폴트: clumpid).
Mode는 컬링이 적용되는 방식을 결정하며, Voxel, Probability, Longest, Blend Median And Longest, Centroid, Count 등의 옵션이 포함됩니다.
Search Points Gain, Voxel Size 및 Point Radius Scale은 공간 평가를 제어합니다.
Fraction은 컬링할 커브 비율을 결정하고, Random Seed는 선택 결과를 랜덤화합니다. Num Curves는 클럼프별로 유지할 커브 수를 지정합니다.
MH Groom Transfer RBF
방사형 기저 함수(Radial Basis Function, RBF) 보간 방식을 사용하여 헤어 가이드를 하나의 스킨 지오메트리에서 다른 지오메트리로 전송합니다. 이 기능은 원래 그룸의 전체적인 구조 및 플로를 유지하면서 유사한 토폴로지 또는 UV 공간에서 그룸을 리타기팅하는 데 특히 유용합니다.
Sample Points Count는 RBF 솔버가 보간에 사용할 포인트 수를 결정합니다. 값이 클수록 일반적으로 더 정확한 전송 결과를 제공하지만, 연산 비용도 증가합니다. 디폴트는 1000이며, 복잡한 전송에서 안쪽으로 파고드는 커브를 보정하려면 2000 또는 3000 같은 더 높은 값을 사용하는 것이 도움이 될 수 있습니다.
Sample Points Mask는 샘플 포인트 분포에 마스킹을 적용할 수 있도록 해줍니다. 이 옵션을 활성화하면 스트랜드 또는 가이드의 플로트 어트리뷰트를 소스 스킨으로 전송하여 밀도 마스크를 생성합니다. 이렇게 하면 솔버에 대해 한층 최적화되고 대표성 있는 포인트 분포를 얻을 수 있습니다.
Match Points With는 소스 스킨과 타깃 스킨 간에 샘플 포인트를 일치시키는 방법을 정의합니다. 일치 방법은 UV 기반 또는 토폴로지 기반 중에서 선택할 수 있습니다.
RBF Settings에서 Kernel은 RBF 보간에 사용되는 커널 함수 타입을 설정합니다. 선택하는 커널에 따라 보간 비헤이비어와 정확도가 달라집니다.
Solver는 보간 방법을 결정합니다. Fast는 Cholesky 솔버를 사용하며, 속도는 빠르지만 안정성이 낮습니다. Robust는 특이 값 분해(Singular Value Decomposition, SVD) 솔버를 사용하여 속도는 느리지만 고퀄리티 결과를 제공합니다.
Damping은 Cholesky 솔버를 사용하는 경우 적용할 수 있습니다. 솔버가 실패하면 안정성을 높이는 데 도움이 됩니다. 0.00001과 같은 매우 작은 값으로 시작하여 0.0001, 0.001, 0.01 등으로 점진적으로 증가시키며 솔버가 성공할 때까지 조정할 수 있습니다.
Maximum Iterations는 SVD 솔버가 수행할 수 있는 최대 반복작업 횟수를 지정합니다. 솔버가 실패하면 이 값을 늘려 연산을 성공적으로 완료할 수 있습니다.
MH Groom Mirror
이 노드는 입력된 가이드를 미러링한 복제본을 생성합니다.
Groups는 미러링 대상이 될 가이드의 서브셋을 정의합니다. 이 그룹 내의 가이드만 영향을 받습니다.
Keep Original은 원본 가이드를 미러링된 가이드와 함께 유지할지 여부를 결정합니다.
Mirror Group은 미러링된 가이드에 대해 그룹화를 활성화하며, 'Group Name'을 통해 해당 그룹의 이름을 지정합니다. 디폴트 이름은 mirrored입니다.
Search Replace Name은 미러링된 가이드 어트리뷰트의 이름을 변경할 수 있으며, 좌우 대칭 그룸의 이름을 일관성 있게 유지하는 데 유용합니다.
MH Groom Ambient Occlusion
이 노드는 버텍스 기반 방식을 사용하여 그룸 커브에 대한 앰비언트 오클루전(Ambient Occlusion, AO)의 근사치를 계산합니다.
앰비언트 오클루전은 MH Groom Export 노드에서도 계산할 수 있습니다.
Curve Cull Percent는 AO 계산 이전에 무시할 커브의 퍼센티지를 정의합니다. 밀도가 높은 헤어스타일의 경우, 0.8 또는 0.9와 같은 높은 값을 사용하는 것이 권장됩니다. 이 경우 전체 커브 중 10~20%만 사용하여 AO 근사치를 계산합니다.
Width Gain은 커브의 너비 어트리뷰트에 곱해져 AO 계산에 사용되는 튜브의 반경을 정의합니다. 일반적으로 너비의 2~3배 값을 사용하면 좋은 결과를 얻을 수 있습니다.
Number of Rays는 포인트별로 샘플링할 레이 수를 설정합니다. 이 값을 늘리면 퀄리티가 향상되지만 계산 시간이 늘어납니다.
Bias는 AO 이펙트의 강도를 조절합니다. 값이 낮을수록 오클루전이 더 강하게 적용됩니다.
Maximum Ray Distance는 레이가 도달할 수 있는 최대 거리를 제한합니다. 이를 통해 멀리 있는 지오메트리에 의해 발생하는 불필요한 오클루전을 방지할 수 있습니다.
Cone Width는 샘플링 레이의 스프레드를 제어합니다. 값이 작을수록 샘플링 원뿔이 좁아지고, 감쇠가 더 날카롭게 표현됩니다.
Blurring Iterations는 결과를 매끄럽게 만들기 위해 AO 값을 블러 처리할 횟수를 지정합니다.
Per Clump Value는 클럼프 ID 어트리뷰트에 정의된 어트리뷰트(디폴트: clumpid)를 사용하여 클럼프별 기준으로 AO 계산을 활성화합니다.
Output Occlusion as Color (Cd)는 오클루전 값을 포인트의 Cd(컬러) 어트리뷰트에 직접 쓸지 여부를 토글합니다. Occlusion Attribute는 Cd를 사용하지 않을 경우 출력 어트리뷰트의 커스텀 이름을 정의합니다.
MH Groom Head Attributes Mirror
이 노드는 메타휴먼 헤드 토폴로지를 기반으로 스킨 어트리뷰트를 미러링합니다.
Group은 영향을 받을 컴포넌트의 서브셋을 정의합니다. 미러링은 지정된 그룹 내의 항목에만 적용됩니다. Group Type은 그룹에 포함된 포인트 또는 프리미티브 같은 엘리먼트의 타입을 지정합니다.
Attribute Names는 선택한 축 또는 방향을 기준으로 미러링되는 어트리뷰트 목록입니다. Attribute Mirror는 적용할 미러링 오퍼레이션을 결정합니다. 여기에는 No Mirroring, Flip, Left to Right, Right to Left 옵션이 포함됩니다.
MH Groom Integer To Float
이 노드는 인티저 어트리뷰트를 플로트 어트리뷰트로 변환합니다. 예를 들어 인티저, 즉 정수 어트리뷰트 값으로 정의된 그룸 영역을 0.0~1.0 범위의 플로트 값, 즉 부동소수점 수로 변환하여 각 영역별로 그룸 밀도 맵을 생성할 수 있습니다.
Source Attribute Name은 변환할 인티저 어트리뷰트의 이름을 지정합니다.
New Attribute Prefix는 변환하는 동안 생성되는 새로운 플로트 어트리뷰트에 사용할 접두사를 설정합니다. Initialize는 변환 과정을 자동화하여 해당 출력 어트리뷰트를 생성합니다.
Output Attributes는 생성할 출력 플로트 어트리뷰트의 수를 수동으로 정의할 수 있도록 해줍니다.
Display as Color (Cd))를 사용하면 포인트의 Cd(컬러) 채널에서 출력 어트리뷰트를 시각화할 수 있습니다.
Display Attribute는 시각화가 활성화되어 있는 경우 어떤 출력 어트리뷰트를 컬러로 표시할지 지정합니다.
Delete Source Attribute는 활성화된 경우 변환 후 원래의 인티저 어트리뷰트를 삭제합니다.
MH Groom Texture Blur
이러한 파라미터는 메시에 텍스처 기반 블러를 적용하고 시각화하는 데 사용되며 그룹 마스킹, 텍스처 마스킹 및 복셀 기반 해상도를 지원합니다. 단순한 박스 블러를 계산합니다. 결과 볼륨의 각 복셀에는 주변 복셀 값의 평균이 포함됩니다. 추가 리매핑 옵션을 사용하면 정의된 값 범위, 램프 및 보간 방법을 사용하여 출력 값을 리셰이핑하거나 스케일 조절할 수 있습니다. 시각화 세팅을 통해서는 뷰포트에서 리얼타임 피드백을 확인할 수 있으며, 그레이스케일 또는 램프 스타일 표시를 지원합니다.
Mesh Group은 마스킹에 사용할 그룹을 지정합니다. 블러 오퍼레이션은 이 그룹에 속한 프리미티브에만 적용됩니다.
Texture Name은 텍스처 맵으로 사용되는 이미지 파일입니다.
Mask Name은 마스킹을 적용하기 위해 텍스처 이미지에 곱해질 마스크를 지정합니다. 이 마스크는 텍스처가 블러 처리될 영역을 구분합니다.
Voxel Size는 생성된 VDB 볼륨 내 복셀의 크기를 정의합니다. 테이퍼링되지 않은 볼륨에서는 모든 복셀에 이 크기가 사용됩니다. 테이퍼링된 볼륨에서는 이 값이 프러스텀 원점에서의 복셀 크기를 나타냅니다.
Iterations는 블러를 반복할 횟수를 설정합니다. 값이 클수록 더 흐릿한 이미지가 생성됩니다. 디폴트 슬라이더 범위는 0~200입니다. 최댓값은 200으로 제한되지 않으며, 원하는 값을 직접 입력하여 오버라이드할 수 있습니다.
Visualize texture on mesh를 토글하여 켜면 블러 수정이 반영된 텍스처가 표시됩니다.
Visualization Style은 Grayscale 또는 Ramp 스타일로 확인할 수 있습니다.
MH Groom Attribute UV Jitter
선택한 프리미티브에서 어트리뷰트 지터링을 활성화하여 보다 자연스럽고 다양한 마스킹을 구현할 수 있게 해줍니다. 이펙트는 특정 그룹에 한정하여 적용할 수 있으며, UV 또는 위치 공간 중 하나에 적용할 수 있습니다. 지터링 방식에는 랜덤 방식과 노이즈 기반 스타일이 있으며 강도, 랜덤성, 시드 값을 조절하는 다양한 파라미터를 사용할 수 있습니다. 추가 마스킹 옵션을 사용하면 고정 값이나 어트리뷰트 기반 필터를 통해 지터 이펙트를 조건부로 적용할 수 있어 제어력과 정밀도를 한층 높일 수 있습니다.
Group은 오퍼레이션의 영향을 받는 프리미티브를 정의합니다. 지정된 그룹에 속한 항목만 수정됩니다.
Attribute에는 지터가 적용될 어트리뷰트가 나열됩니다.
Method는 지터링에 사용할 입력 공간을 선택합니다. UV 또는 Position 중에서 선택할 수 있습니다.
UV Attribute는 UV 공간이 선택된 경우에 사용되는 UV 어트리뷰트를 설정합니다. 디폴트는 uv이며, 드롭다운을 통해 다른 옵션도 사용할 수 있습니다.
Style은 지터 방식을 결정합니다. Random 또는 Noise 중에서 선택할 수 있습니다.
'Style'이 Random으로 설정된 경우, Jitter는 어트리뷰트에 적용되는 지터의 세기 또는 양을 설정합니다. Jitter Seed는 지터 패턴을 변경하는 데 사용되는 랜덤 시드를 제어합니다.
'Style'이 Noise로 설정된 경우, 지터는 Noise Amplitude과 Noise Frequency로 제어됩니다. 노이즈 패턴은 필요에 따라 XYZ 축을 기준으로 오프셋할 수 있습니다.
Masking을 사용하면 지터가 적용되는 위치를 추가로 제어할 수 있습니다.
MH Groom Texture to Curve Mask Paint
Texture Mask Paint 노드와 유사하게 이 노드도 볼류메트릭 텍스처 데이터를 출력하는 인터랙티브 페인팅 워크플로를 제공합니다. 마스크 해상도는 토폴로지에 대해 독립적이므로 단순한 지오메트리에서도 고해상도 마스크를 사용할 수 있습니다.
표준 파라미터 외에도 마스크를 커브 어트리뷰트로 전달하고, 동일한 노드 내에서 리매핑할 수도 있습니다.
Guide Attribute Type은 Point 또는 Primitive 어트리뷰트 중에서 선택합니다. 이후의 Texture Paint 파라미터는 Texture Mask Paint 노드와 유사합니다.
페인팅된 마스크는 아래쪽 슬라이더를 사용하여 추가로 리매핑할 수 있습니다. 리매핑은 페인팅된 텍스처뿐만 아니라 커브를 따라 수행하는 것도 가능합니다.
이 노드를 사용하면 여러 볼륨을 결합하고 제어할 수 있습니다. 새로운 조합이 생성될 때마다 소스 복셀을 대상과 결합할 방법을 결정하는 새로운 파라미터 세트를 제공합니다. Adjustments는 현재 대상에 혼합하기 전에 소스 값에 적용되며, 이를 통해 별도의 프리 프로세스 볼륨 없이도 올바른 범위로 맞출 수 있습니다. 적용할 볼륨은 Source 섹션을 통해 선택합니다. 대상 볼륨이 스칼라인 경우, 소스 볼륨의 길이가 사용됩니다. 대상 볼륨이 벡터이고 소스가 스칼라인 경우, 해당 값을 리플리케이트하여 확장합니다.
이후에는 모든 복셀에 대해 포스트 프로세싱이 수행됩니다. 이는 블렌딩 세팅과는 무관하게 작동합니다. 이전 결합에서 해당 복셀이 영향을 받지 않았더라도 이 단계에서는 여전히 처리됩니다.
MH 그룸 임포트
이 노드는 Alembic 파일에서 그룸 지오메트리를 임포트하는 데 사용됩니다. 해당 지오메트리가 그룸용 Alembic 사양을 따를 경우, Houdini 또는 다른 애플리케이션에서 익스포트된 파일도 지원됩니다. 이 노드를 사용하면 외부 그룸 데이터를 현재 씬으로 가져와 추가 처리, 스타일링 또는 익스포트를 수행할 수 있습니다.
File Name은 그룸 데이터를 포함한 Alembic 파일의 경로를 지정합니다.
Reload Geometry는 디스크에서 Alembic 파일을 강제로 리로드하도록 강제합니다.
Translate, Rotate, Scale 및 Uniform Scale은 임포트 후에 적용할 수 있는 선택적 트랜스폼입니다.
Guide Thickness는 임포트한 가이드 커브의 너비에 곱해집니다.
Remove Groom Attributes는 표준 Houdini 스킨 어트리뷰트 및 width를 제외한 모든 어트리뷰트를 삭제합니다.
Primitive Checks는 임포트한 그룸 에셋에서 오버랩되는 포인트가 있는지 검사합니다.
Overlapping은 루트 위치가 동일한 가이드 커브를 탐지합니다. 이는 지오메트리 스트림을 병합하는 과정에서 발생할 수 있으며, 식별하기 어려운 경우가 많습니다. 세 가지 모드 중 하나를 선택합니다.
Ignore: 검사를 건너뛰고 아무런 오퍼레이션도 수행하지 않습니다.
Mark: 중첩된 가이드를 사용자가 지정한 그룹에 추가하고 경고를 표시하지만 지오메트리는 수정하지 않습니다.
Repair: 중첩된 각 루트 위치마다 하나의 가이드를 제외한 나머지를 제거합니다.
Group은 복구 과정에서 유지된 하나를 제외하고, 중첩 루트를 가진 가이드를 포함할 그룹의 이름을 설정합니다.
Guides Threshold는 중첩된 가이드 루트를 탐지할 때 사용할 거리 허용치를 정의합니다.
Strands Threshold는 중첩된 스트랜드 루트를 식별하기 위한 거리 한계치를 설정합니다.
Apply To Strands는 중첩 루트 검사를 가이드뿐 아니라 스트랜드에도 적용할지 여부를 토글합니다.
MH Groom Export(SOP)
이 노드는 언리얼 엔진의 그룸용 Alembic 사양에 따라 그룸 커브를 Alembic 파일에 익스포트합니다. 가이드와 스트랜드의 익스포트를 모두 지원하며 그룹화, 어트리뷰트 매핑, 포맷 지정 등을 세밀하게 제어할 수 있습니다.
자세한 내용은 OBJ 레벨의 MH Groom Export를 참고하세요.
MH 그룸 헤드
이는 그루밍 워크플로에 맞게 디자인된 표준화된 메타휴먼 헤드 지오메트리를 제공합니다.
또한 Houdini 21에서는 커스텀 MH 헤드 및 텍스처를 MHC에서 익스포트한 캐릭터 폴더에서 로드할 수 있습니다. 영역별로 분리된 그루밍 메시, 전체 헤드 지오메트리(눈 포함) 및 콜리전 용도로 사용할 수 있는 선택적인 VDB를 출력합니다. 이 지오메트리는 이후 시스템에서 인식할 수 있도록 다음과 같은 명명 규칙을 따릅니다.
Houdini 21 이전 버전에서 이 HDA를 열면 시작 시 vex strict 변수 를 언급하는 경고가 표시됩니다. 하지만 이 경우에도 작업이 중단되지는 않으며, Houdini 21 툴 종속성 때문입니다.
헤드 메시 → 'Head' 또는 'head'
눈 메시 → 'EyeLeft', 'eyeleft', 'EyeRight', 'eyeright'
연골 메시 → 'Cartilage' 또는 'cartilage'
눈 가장자리 메시 → 'eyeEdge' 또는 'eyeedge'
눈 껍질 메시 → 'eyeShell' 또는 'eyeshell'
Skin Texture는 스킨에 적용할 텍스처를 선택합니다. Custom으로 설정하면 외부 텍스처 파일을 사용할 수 있습니다.
Texture Path는 커스텀 스킨 또는 눈 텍스처의 파일 패스를 지정합니다.
Skin Color는 텍스처가 적용되지 않은 경우에 사용할 스킨 톤을 설정합니다.
Eye Texture는 안구 텍스처를 선택할 수 있습니다. 스킨과 마찬가지로 Custom 입력을 지원합니다.
Iris Color 및 'Pupil Color'는 눈 텍스처를 사용하지 않는 경우 적용할 컬러 값을 설정합니다.
Eye Shell Alpha는 눈 껍질 지오메트리의 투명도를 조정합니다.
UV Transform은 텍스처 워핑을 최소화하기 위해 안구에 UV 미세조정을 적용합니다. 일부 커스텀 텍스처를 사용할 경우 이 옵션을 비활성화해야 합니다.