Q100126: पायथन का उपयोग करके Ocula स्क्रिप्ट के निर्माण को स्वचालित कैसे करें

अनुसरण करें

सारांश

यह आलेख बताता है कि आप पायथन का उपयोग करके O_Solver नोड के साथ Ocula स्क्रिप्ट के निर्माण को कैसे स्वचालित कर सकते हैं।

अधिक जानकारी

आप काम की तैयारी करते समय अपना समय बचाने के लिए सरल Ocula स्क्रिप्ट के निर्माण को स्वचालित करने के लिए Nuke के पायथन एपीआई का उपयोग कर सकते हैं। नीचे दिया गया उदाहरण कोड एक तरीका दिखाता है जिससे आप ऐसा कर सकते हैं।
नीचे दिया गया फ़ंक्शन निम्न कार्य करता है:
  1. Nuke स्क्रिप्ट को दो दृश्यों के लिए सेट करता है
  2. दिए गए फुटेज के लिए एक रीड नोड बनाता है
  3. एक O_Solver नोड बनाता है और इसे रीड से जोड़ता है
  4. रीड अनुक्रम के पहले, अंतिम और मध्य फ़्रेम के लिए O_Solver नोड पर कीफ़्रेम बनाता है।
# Create an O_Solver keyed at first_frame, last_frame and the mid frame

def createOculaTree(filename, first_frame, last_frame):
  mid_frame = int( (first_frame + last_frame)/2 )

  # set up views
  nuke .root()["setlr"].execute()

  # create the read and set up for the frame range
  reader = nuke .createNode("Read",inpanel=False)
  reader.knob("file").setValue(filename)
  reader.knob("first").setValue(first_frame)
  reader.knob("last").setValue(last_frame)
  
  # set up the O_Solver node and create a key
  solver = nuke .createNode('O_Solver4_0',inpanel=False)
  solver.setInput(0, reader)
  nuke .execute(solver, nuke .FrameRanges([first_frame, mid_frame, last_frame]))
फिर आप इसे एक साधारण स्क्रिप्ट में उपयोग कर सकते हैं जो आपके फुटेज को इंगित करती है, फ़ंक्शन चलाती है और फिर स्क्रिप्ट को सहेजती है।
# define the location of your footage
# and the frame range stereoSequence='/path/to/stereoFootage.%V.###.ext'
first=1
last=20

# Create the Ocula script
createOculaTree(stereoSequence,first,last)

# save out your script
nuke .scriptSaveAs('/path/to/save/ ocula Script.nk', True)
कृपया ध्यान दें: पायथन के माध्यम से O_Solver नोड को निष्पादित करने के लिए आपको Nuke और Ocula दोनों के लिए इंटरैक्टिव लाइसेंस का उपयोग करना होगा।
  • यदि आप Nuke टर्मिनल सत्र चला रहे हैं तो आपको इसे अपने तर्कों में "-i" के साथ लॉन्च करना होगा, उदाहरण के लिए "Nuke13.2 -t -i" या "Nuke12.3 -ti"

  • यदि आप बाहरी पायथन सत्र में Nuke पायथन मॉड्यूल के रूप में उपयोग कर रहे हैं तो आपको अपने "आयात nuke " कमांड से पहले os.environ[ "NUKE_INTERACTIVE" ] = "1" सेट करना होगा।
अग्रिम पठन
Nuke के Python API का उपयोग करने के तरीके के बारे में अधिक जानकारी के लिए कृपया Nuke Python डेवलपर गाइड देखें।

कीवर्ड: Ocula , पायथन, ओ_सॉल्वर

    हम चाहते हैं कि खेद व्यक्त करते हैं

    कृपया हमें बताएँ कि