**'호웅'님의 댓글 덕분에 [Maya] [VFX] 창문에 흘러내리는 물방울 특수효과(3)편 포스팅이 누락되었음을 알게되었습니다ㅎ 감사합니다.

 

1 폴리곤 전환

아놀드의 water쉐이더를 사용하기 위해서는 파티클을 폴리곤으로 전환할 필요가 있다. 최근 아놀드의 향상된 리얼타임 GPU와 bifrost를 사용한다면 굳이 폴리곤변환 과정을 거쳐야 할 필요가 없지만 해당 포스팅을 작성하던 2년 전의 상황임을 감안해서 진행해보자.


'Modify'메뉴의 Convert항목에서 'nParticle to Polygons'를 실행한다. 해당 명령어를 실행하면 아래와 같이 파티클이 폴리곤으로 전환되면서 Mesh의 상태를 설정할 수 있는 설정창을 볼 수 있다.



Threshold, Blobby Radius Scale 및 Max Triangle Resolution의 수치를 조절하면서 폴리곤 Mesh의 형태를 원하는 물방울로 만든다. 




2 물방울 충돌

유리창에 물방울이 흘려내리는 장면을 현실감있게 표현하기 위해서는 맺혀있는 물방울이 필요하다. 흘려내리는 물방울은 맺혀있는 물방울과 결합하거나 충돌한다. 이를 위해서 유리창Mesh(폴리곤)를 선택한 뒤 n파티클 메뉴의 "Emit from Object"를 실행한다. (새로운 파티클을 적용하기 전에 기존의 파티클 시뮬레이션은 꺼둔다)


맺혀있는 물방울이므로 '중력'을 무시하고(ignore Solver Gravity 체크) 생성시간(lifespan)을 아래와 같이 설정한다.


파티클shape에서 랜더타입을 Blobby Surface로 설정한다. (물방울 표현)


유리창 표면에 맺혀있는 물방울은 모든 오브젝트와 충돌해야 한다. 따라서 collisions의 collision layer값을 0으로 설정한다. (collision layer가 0이라면 모든 rigid, softbody와 충돌을 일으킨다.)


랜더링을 위해서 파티클을 폴리곤으로 변환한다.


변환된 Mesh는 물방울 형태로 threshold값을 조절한다.


3 arnold 랜더링

랜더링은 폴리곤을 하는 것과 같은 방식으로 진행한다. arnold의 aistandardSurface쉐이더에는 재질과 관련된 기본값들이 존재한다. 해당 작업에서는 'Clear_Water'재질을 선택했으며, 라이팅은 아놀드 메뉴의 기본 dom라이트를 적용했다. 




기본 라이팅으로 랜더링을 진행했을 때, 아래와 같은 결과물을 볼 수 있다. 해당 포스팅의 내용을 응용한다면 피가 흘려내리는 장면이나 세균번식과 같은 CG자료화면에 도전해보자.