- AOV  Depth, Occlusion패스설정 -


Depth 패스는 '깊이감', '거리감'을 표현할 수 있는 채널을 만들어준다. 카메라 촬영에서 아웃포커싱(대상 오브젝트를 제외한 부분이 흐려짐)을 구사하는 것과 같은 효과를 내려면, depth 채널을 활용해야 한다. Occlusion 패스는 그림자와 명암비를 뚜렷하게 해주는 기능을 한다.


1 Zdepth 채널 만들기 』

node에디터를 실행하고, sampleinfo 노드와 surface 쉐이더 노드를 실행한다. 그리고 sampleinfo노드의 PointCamera를 surfaceShader의 other -> outColor와 연결한다.


point카메라 쉐이더의 이름을 지정한다. point카메라는 색으로 point별 거리를 설정하는데, blue색일수록 point가 멀리 있다는 것을 의미한다. (빨간색일수록 카메라와 거리가 가깝다)


2 depth 랜더 레이어 생성하기 

depth이름으로 랜더 레이어를 생성하고, 지난 포스팅에서 만들어놓은 RGB 템플릿을 import한다. (AOV(2) 포스팅 참고)


override에서 node에디터에서 생성한 pointCamera_SG 쉐이더를 입력한다.


 불러온 템플릿에서 연결된 기존의 연결을 끊고, pointCamera_SG를 입력한다.


Zdepth레이어를 랜더링하면, 아래와 같은 이미지가 나타난다. arnold 랜더뷰에서 톱니바퀴를 클릭하면, 색의 수치값을 볼 수 있다. 


각 색깔에 마우스를 이동시켜보면, 뒤에 있는 오브젝트일수록 blue값이 높아짐을 알 수 있다. 아래 사진에서는 노란색 부분이 가장 멀리 있는 부분인데, 노란색은 파란색과 녹색을 가산혼합하면 나오는 색이다. 즉, blue에 가까워질 때 노란색이 나타나고, 현재 가장 먼 point라는 의미다.


Nuke에서 inver노드를 활용하면, 노란색을 파란색으로 변경할 수 있다. 

파란색 값을 활용한다면, depth 채널을 조절할 수 있다는 의미다. (Nuke 채널합성 포스팅 참고) 


3 Occlusion 패스 생성 

하이퍼쉐이더에서 ai occlusion 쉐이더를 생성한다. 이름은 아래 사진처럼 지정한다. 


AO 랜더 레이어를 생성하고, Collection을 생성한다. (참고로 라이트는 항상 갖고 와서 꺼준다) override로 지정한 이름인 AO_MTL_SG를 입력한다.


AO레이어를 랜더링하면, 아래와 같은 이미지를 얻을 수 있다. occlusion값은 아래 사진의 빨간색 박스부분을 조절하여 어두운 부분을 조절할 수 있다.


 AO 맵은 알파를 포함하고 있으며, 이는 Nuke 채널합성에서 유용하게 사용가능하다.