renderlayer를 만들고 해당 오브젝트 집어 넣고 아래 MEL 실행
renderLayerBuiltinPreset linearDepth [RenderLayerName];
이러면 자동으로 뎁스 쉐이더가 생성이 되고 assign까지 된다.
* 현재 해당 레이어에 적용시키려면
renderLayerBuiltinPreset linearDepth `editRenderLayerGlobals -q -currentRenderLayer`;
좀 더 디테일한 고급팁을 얘기하자면~
위 스크립트를 적용하면 뎁스 쉐이더가 생긴다.
아래는 뎁스 적용 후 생성된 노드들이다. (오브젝트에 assign도 되어 있을 것이다)
여기서 multiplyDivide1는 딱히 건드릴건 없고 (요건 나중에 더 고급팁에서?) 중요한건 setRange1 노드인데, 처음 접할 경우 렌더링이 생각한 대로 나오지 않을 수도 있다.
(* 무엇보다 제일 중요한건 요건 mentalray용이므로 maya software render 에서는 안먹힌다는거!)
암튼 setRange1노드를 보면 oldMin과 oldAMax값이 있는데 디폴트로 카메라 값을 기준으로 이미 셋팅이 되어 있다. 하지만 요건 일반적인 씬의 상황이므로 아티스트가 원하는대로 결과를 뽑긴 힘들것이다.
그래서 연결을 끊어줘야 한다.
요 상태가 디폴트이다. 하지만 실제 작업을 위해서는 old min 과 old max를 바꿔줘야 한다.
기존값은 break 시켜주고...
measure Tool>Distance Tool을 이용해서 렌더링 할 min 값과 max 값을 입력해준다
만약 카메라 애니메이션이 되어 있어서 카메라 위치는 계속 바뀌는데 depth 정도를 유지 하고 싶다면 각각의 distance 값을 각각 old min, old max에 connection 시켜 주면 된다.