Q100461: Python을 사용하여 프레임 서버로 Nuke 스크립트를 렌더링하는 방법

요약

이 문서에서는 Python을 통해 Frame Server를 사용하여 Nuke 스크립트를 렌더링하는 방법을 설명합니다.


더 많은 정보

Nuke 또는 Nuke Studio 에서는 로컬 GUI에서, Nuke 의 터미널 세션을 사용하거나 프레임 서버를 사용하는 등 여러 가지 방법을 사용하여 렌더링을 실행할 수 있습니다.

프레임 서버를 사용하면 Nuke 에서 여러 Nuke 프로세스를 사용하여 로컬 머신이나 네트워크상의 다른 머신에 작업을 분산함으로써 렌더링 시간을 줄일 수 있습니다. 프레임 서버에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

프레임 서버를 사용한 렌더링

Nuke 11.0v1부터 Nuke 스크립트를 Nuke GUI의 프레임 서버에서 렌더링할 수 있습니다. 아래에서 볼 수 있듯이 렌더 대화 상자에서 프레임 서버를 사용하여 렌더링 옵션을 선택하면 됩니다.

이렇게 하면 렌더링 작업이 백그라운드 렌더링 대기열에 추가되고 Nuke 프로세스를 사용할 수 있을 때 렌더링이 시작됩니다.

Frame Server를 사용하여 Python을 통해 Nuke 스크립트를 렌더링하려면 렌더링해야 할 내용에 따라 사용할 수 있는 두 가지 명령이 있습니다.

from hiero .ui.nuke_bridge import FnNsFrameServer

#Queue background render of all the frames for a script
FnNsFrameServer.renderScript("C:/temp/test.nk")

#Queue background render of a range of frames for a script
FnNsFrameServer.renderFrames("C:/temp/test.nk", "1-10", "Write1", ["main"])

이 명령들은 프레임 서버가 Nuke 스크립트를 렌더링할 수 있도록 Nuke 스크립트를 저장해야 합니다. 이 명령들을 nuke .scriptSaveAs() 명령과 함께 사용하면 렌더링 가능한 스크립트의 임시 버전을 저장할 수 있습니다. 이렇게 하면 렌더링 중에 스크립트가 실수로 업데이트되는 것을 방지할 수 있습니다.

파이프라인 요구 사항에 따라 사용자 정의 메뉴/Python 함수에서 실행하거나 스크립트 편집기 에서 직접 실행할 수 있습니다.

renderScript() 함수는 해당 함수에서 호출된 Nuke 스크립트의 프레임에 대한 모든 Write 노드의 모든 뷰를 렌더링합니다.

반면 renderFrames() 함수는 스크립트에 정의된 View와 나열된 Write 노드에 대해서만 지정된 프레임을 렌더링합니다.

    우리는 문제로 불편을 끼쳐 드려 죄송합니다

    이유를 알려주세요