TWA Houdini1/Rigidbody

TWA 후디니 1 RIGIDBODY_14_01 : 의자 다시 만들기

yiss09 2023. 4. 7. 23:13

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

 

HOUDINI1_ RIGIDBODY

3️⃣ 출동 SIMULATION 기초 이론부터 심화된 내용을 공부합니다. 또한 자동차를 이용한 리깅 시뮬레이션 BASIC을 훈련합니다.

www.twahoudini.com

 

Rigidbody14_part1에서는 다음 강의에 있을 Simulation을 준비하기 위해서 그 재료인 의자를 Producedural하게 모델링해보겠다.

 

 


 

가장 먼저 원점을 기준으로 의자에 필요한 점들을 만들어주려 한다.

RunOver를 Detail(only once)로 두고 작업하겠다.

이때 각각의 x,y,z에 필요한 길이를 float cx,cy,cz라 두고 작업하겠다. 여기서 이 값들을 2로 나누어주는 이유는 2로 나누어 줌으로써 양쪽 끝 점 사이의 길이가 chf에 입력한 값 그 자체가 되기 때문이다.

addpoint로 필요한 점들을 생성해주었다면, Attribute Copy로 Box(Polygon)에 점들의 정보를 붙여준다. 이때 Attribute Copy 과정에서 문제가 없게 하려면 addpoint로 점을 생성할 때 점이 놓일 순서를 Box와 맞춰주어야 한다.

 

그 다음 base의 내용에서 th(두께)에 대한 내용을 추가해 Seat에 대한 정보를 생성해준다.

똑같이 Attribute Copy로 Box에 point에 대한 정보들을 붙여준다.

의자 받침이 생성되었다.

 

이제 의자 다리를 만들 차례이다.

For-each Point로 base에서 가져온 각각의 point로부터 다리를 만들기 위해서 필요한 point들을 생성해내어 주겠다.

새롭게 다리의 길이에 대한 정보인 float lh가 쓰이게 된다.

Attribute Copy로 점들의 정보를 Box로 옮겨주어 다리를 완성시켰다.

 

이번에는 의자 등받이에 필요한 기둥을 만들어주려 한다.

새롭게 등받이 높이의 정보인 float bh가 쓰였다.

base point에서의 5, 6번 point에 대하여 각각 기둥에 필요한 point들을 만들어내었다.

Attribute Copy로 기둥을 완성시켰다.

 

방금 만든 등받이 기둥으로부터 point의 정보를 받아와 이용하였다.

안쪽 면에서 위아래 point들의 각각의 중간지점을 Bound로 구해준 뒤 선으로 만들어주었다.

만들어진 선에 Carve와 Blast를 달아 선의 경로상에서 원하는 위치에 0번 point가 놓일 수 있도록 해주었다.

이렇게 얻어진 0번 point를 기준으로 두께가 있는 등받이를 만들어주었다.

Carve에서의 FirstU 값을 조절해 등받이의 위치를 조절할 수 있다.

 

방금 만든 등받이에 대한 세팅을 그대로 복사하여 FirstU 값을 다르게 조절해주면 두 개의 등받이를 만들어낼 수 있다.

 

완성한 등받이를 chair_info에서 쉽게 조절할 수 있도록 파라미터를 생성해 알맞게 Copy Parameter 해주었다.

만약 면이 뒤집힌 파츠가 있다면, Reverse를 달아 간단하게 해결해주면 된다.