Houdini에서 UV의 심 가장자리 얻기
5532 단어 HOUDINI
개요
Houdini에서 UV의 심 가장자리를 얻는 방법을 세 가지 소개합니다.
버전은 18.0.287을 사용합니다.
사용 예
Remesh 할 때 Hard Edges에 취득한 그룹을 지정하면 UV를 유지하고 Remesh 할 수 있습니다.
정사각형화 이음새 가장자리를 유지할 때 사용할 수 있습니다.
Height 맵을 사용한 디스플레이스를 실시할 때에 심 엣지의 개소만 흐리게 하는 것으로 파탄을 막을 수가 있습니다.
기법 1
첫 번째는 Group from Attribute Boundary 노드입니다.
기본 설정으로 연결하는 것만으로 UV의 이음 가장자리를 그룹으로 해줍니다.
기법 2
두 번째는 Vertex Split과 Group Transfer를 사용한 방법입니다.
Vertex Split에 uv를 지정하면 심 가장자리 부분에서 다각형을 나눕니다.
거기에 Group Create 노드를 연결하고 Unshared Edge를 체크하면 이음새 가장자리 부분에 그룹이 만들어집니다.
그대로 토폴로지가 바뀌므로 Group Transfer에서 그룹을 전송합니다.
이때 Distance Threshold를 0.001 등 작은 값으로 하지 않으면 올바르게 전송되지 않으므로 주의해 주십시오.
기법 3
세 번째 방법은 Attribute Wrangle을 사용하는 방법입니다.
두 번째와 마찬가지로 Vertex Split을 연결 한 후 원래 지오메트리를 첫 번째 입력, 두 번째 Vertex Split을 연결하고 Run Over를 Vertices로 만든 다음 코드를 입력합니다.
int edge = vertexhedge(0, @vtxnum);
if (hedge_equivcount(1, edge) == 1)
{
int src_pt = hedge_srcpoint(0, edge);
int dst_pt = hedge_dstpoint(0, edge);
setedgegroup(0, "seams", src_pt, dst_pt, 1);
}
처리 속도
이상 3가지 방법의 처리 속도를 측정해 봅니다.
가벼운 모델이라고 차이가 알기 어려우므로, 돼지 씨에게 Subdivide를 3 단계 곱한 상태로 계측해 봅니다.
조금 보기 어렵지만 각 처리 속도는
Remesh 할 때 Hard Edges에 취득한 그룹을 지정하면 UV를 유지하고 Remesh 할 수 있습니다.
정사각형화 이음새 가장자리를 유지할 때 사용할 수 있습니다.
Height 맵을 사용한 디스플레이스를 실시할 때에 심 엣지의 개소만 흐리게 하는 것으로 파탄을 막을 수가 있습니다.
기법 1
첫 번째는 Group from Attribute Boundary 노드입니다.
기본 설정으로 연결하는 것만으로 UV의 이음 가장자리를 그룹으로 해줍니다.
기법 2
두 번째는 Vertex Split과 Group Transfer를 사용한 방법입니다.
Vertex Split에 uv를 지정하면 심 가장자리 부분에서 다각형을 나눕니다.
거기에 Group Create 노드를 연결하고 Unshared Edge를 체크하면 이음새 가장자리 부분에 그룹이 만들어집니다.
그대로 토폴로지가 바뀌므로 Group Transfer에서 그룹을 전송합니다.
이때 Distance Threshold를 0.001 등 작은 값으로 하지 않으면 올바르게 전송되지 않으므로 주의해 주십시오.
기법 3
세 번째 방법은 Attribute Wrangle을 사용하는 방법입니다.
두 번째와 마찬가지로 Vertex Split을 연결 한 후 원래 지오메트리를 첫 번째 입력, 두 번째 Vertex Split을 연결하고 Run Over를 Vertices로 만든 다음 코드를 입력합니다.
int edge = vertexhedge(0, @vtxnum);
if (hedge_equivcount(1, edge) == 1)
{
int src_pt = hedge_srcpoint(0, edge);
int dst_pt = hedge_dstpoint(0, edge);
setedgegroup(0, "seams", src_pt, dst_pt, 1);
}
처리 속도
이상 3가지 방법의 처리 속도를 측정해 봅니다.
가벼운 모델이라고 차이가 알기 어려우므로, 돼지 씨에게 Subdivide를 3 단계 곱한 상태로 계측해 봅니다.
조금 보기 어렵지만 각 처리 속도는
두 번째는 Vertex Split과 Group Transfer를 사용한 방법입니다.
Vertex Split에 uv를 지정하면 심 가장자리 부분에서 다각형을 나눕니다.
거기에 Group Create 노드를 연결하고 Unshared Edge를 체크하면 이음새 가장자리 부분에 그룹이 만들어집니다.
그대로 토폴로지가 바뀌므로 Group Transfer에서 그룹을 전송합니다.
이때 Distance Threshold를 0.001 등 작은 값으로 하지 않으면 올바르게 전송되지 않으므로 주의해 주십시오.
기법 3
세 번째 방법은 Attribute Wrangle을 사용하는 방법입니다.
두 번째와 마찬가지로 Vertex Split을 연결 한 후 원래 지오메트리를 첫 번째 입력, 두 번째 Vertex Split을 연결하고 Run Over를 Vertices로 만든 다음 코드를 입력합니다.
int edge = vertexhedge(0, @vtxnum);
if (hedge_equivcount(1, edge) == 1)
{
int src_pt = hedge_srcpoint(0, edge);
int dst_pt = hedge_dstpoint(0, edge);
setedgegroup(0, "seams", src_pt, dst_pt, 1);
}
처리 속도
이상 3가지 방법의 처리 속도를 측정해 봅니다.
가벼운 모델이라고 차이가 알기 어려우므로, 돼지 씨에게 Subdivide를 3 단계 곱한 상태로 계측해 봅니다.
조금 보기 어렵지만 각 처리 속도는
int edge = vertexhedge(0, @vtxnum);
if (hedge_equivcount(1, edge) == 1)
{
int src_pt = hedge_srcpoint(0, edge);
int dst_pt = hedge_dstpoint(0, edge);
setedgegroup(0, "seams", src_pt, dst_pt, 1);
}
이상 3가지 방법의 처리 속도를 측정해 봅니다.
가벼운 모델이라고 차이가 알기 어려우므로, 돼지 씨에게 Subdivide를 3 단계 곱한 상태로 계측해 봅니다.
조금 보기 어렵지만 각 처리 속도는
되었습니다. 역시 Attribute Wrangle은 빠르네요!
Group from Attribute Boundary는 표준 노드인 것 같았던 것보다 느린 결과가 되었습니다.
요약
이상 Houdini에서 UV 심을 얻는 방법이었습니다.
덧붙여서 소개한 수법은 모두 애트리뷰트의 경계를 취득하는 것이므로, 예를 들면 N을 지정하는 것으로 하드 엣지의 취득에도 사용할 수 있고, shop_materialpath를 지정하는 것으로 머티리얼의 경계를 취득하는 일도 할 수 있습니다.
Reference
이 문제에 관하여(Houdini에서 UV의 심 가장자리 얻기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/d658t/items/c0062a5c8fb0c5346f32
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Houdini에서 UV의 심 가장자리 얻기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/d658t/items/c0062a5c8fb0c5346f32텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)