TWA Houdini1/Starter & Particles

TWA 후디니 1 Starter_01 : Group

yiss09 2023. 1. 3. 18:13

https://www.twahoudini.com/course/starterparticles1

 

HOUDINI1_ STARTER & PARTICLES

1️⃣ 후디니 작업을 위한 기본 프로세스 이론을 공부합니다. SOLVER 작동 개념을 훈련하고 PARTICLE 시스템을 구현합니다.

www.twahoudini.com

 

오늘의 TWA 수업은 Group에 대해서이다.

Group, IsoOffset, Group by Range, Group Combine, Group  Copy, Group Promote의 사용법을 배웠다.

 


Group, IsoOffset, Group by Range

Group node의 사용법을 알아보자.

Group Name : 그룹의 이름을 정할 수 있다. 이름을 정해두면 다른 노드에서 손쉽게 그룹을 지정할 수 있다.

Group Type : Primitives, Points, Edges, Vertices의 4가지 그룹 타입을 고를 수 있다.

Base Group : Base Group에서는 그룹 범위를 지정할 수 있다. 두 가지 방법으로 지정가능하다.

 ① 빈칸에 숫자를 기입한다. 다음 숫자를 기입할 때에는 띄어쓰기를 한다. ex) 3 4 8-10 5-6

 ② 빈칸 옆의 마우스 모양 버튼을 눌러 Viewport에서 직접 범위를 지정한다. 범위를 고른 뒤엔 Enter를 눌러 확정한다.

 

Keep in Bounding Regions : 경계를 설정해 그 구역과 겹치는 범위를 그룹화시킨다. 

 - Bounding Box : 가상의 Box를 경계로 정한다.

 - Bounding Sphere : 가상의 구를 경계로 정한다.

 - Bounding Object(points or vertices only) : 2번째 Input에 들어온 Object를 경계로 정한다. 단, Grouptype이 Points나 vertices인 경우에만 작동한다.

 - Bounding Volume (points or vertices only) : 2번째 Input에 들어온 Volume을 경계로 정한다. Iso Surface는 0.001으로 두고 Invert를 체크한다.

 

IsoOffset : Object를 Volume의 형태로 변환시키는 노드이다. Uniform Sampling Divs 파라미터를 조정하여 숫자가 커질수록 원본에 가까운 형태를 유지할 수 있다. Group 노드와 함께 사용시에 예상되는 범위보다 더 많은 부분이 그룹화될 시 Uniform Sampling Divs를 높여 그 범위를 줄일 수 있다.

 

Keep by Normals : Direction으로 그룹화할 Normal의 방향을 설정하고 Spread Angle을 통해 그룹의 범위를 정해 줄 수 있다.  오른쪽 그림과 같이 그룹의 범위는 원뿔형태를 갖는다.

 

그림의 Group Type은 Edge이다.

Include by Edges : 얼마나 급격하게 꺾여있는지를 계산하여 그룹화시킨다. 테두리를 선택할 때 사용된다. Grouptype에 따라 선택할 수 있는 항목이 달라진다는 점을 유의하자. 

 - Min,Max Edge Angle를 조절해 범위를 정할 수 있다.

 - Unshared Edges를 체크하면 가장 가장자리의 것들을 지정해준다. Grid에서 유용하게 쓰인다.

 

Group by Range : Group 노드의 한 종류로 Group Type과 Range Type을 이용해 다양한 형태의 그룹을 지정할 수 있다. 

또한 Range Filter에서 Offset을 건드려 Animation을 만들 수 있다.


Group Combine

내용을 한번 읽어보겠다.

Group Name에서 지정된 그룹 A는 그룹 B와 같고 그 그룹이 그룹 A와 Intersect(교집합)를 이룬 뒤 그룹 C와 합집합을 가진다.

이와같이 Group Combine은 앞서 지정되었던 그룹들을 Union, Intersect, Exclusive Or, Subtraction을 이용하여 합치거나 빼주는 역할을 하고 있다.

 

 


Group Copy

Group Copy를 사용하면 두 번째 Input에서의 정보를 첫 번째 Input으로 복사 할 수 있다.

 - Primitive Groups, Point Groups, Edge Groups 왼쪽의 체크를 통해 가져올 정보를 선택할 수 있으며, 옆의  빈 박스에 C, A와 같은 원하는 그룹의 이름을 입력하면 해당 그룹의 정보만을 가져올 수 있다.

 - 그 후 Group Prefix를 통해 가져올 정보의 이름 앞에 올 수식어를 정해줄 수 있다.

 

 - 만약 연결된 Input들의 Point와 Primitive의 수가 같지 않다면 올바른 모양을 얻지 못하는데 위의 그림이 바로 그 예이다. Row와 Column의 수가 10인 것이 grid1, 15인 것이 grid2이다. grid2에서 우리는 왼쪽 상단의 네모난 구역을 지정해 group화 시켰다. 하지만 결과로 나온 grid1은 같은 모양이 아닌 것을 볼 수 있다. parameter를 확인해보면 primitive number를 따라 copy된 것임을 알 수 있다.

 


Group Promote

Group Promote는 이미 타입이 정해진 그룹의 타입을 바꿔주는 노드이다.

 - 그림에서 Node info를 확인해보면 group2에서는 Point Group A가 존재한다. 하지만 grouppromote2에서 A 그룹의 타입을 Points에서 Primitves로 바꿔주어 Prim Group a의 정보만이 남게 되었다.

Keep Original Group : 변형되어 사라진 Group info를 삭제하지 않고 남긴다.

Include Only Elements on the Boundary : Group의 테두리에 있는 정보만 남기고 그 안의 정보는 삭제한다.

Output as Integer Attribute : 출력하는 Group의 정보를 Attribute 정보로 출력시킨다. Parameter에서 확인 가능하다.