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

सारांश

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

अधिक जानकारी

आप Nuke के Python API का इस्तेमाल करके सरल Ocula स्क्रिप्ट के निर्माण को स्वचालित कर सकते हैं जिससे काम तैयार करते समय आपका समय बचेगा। नीचे दिया गया उदाहरण कोड ऐसा करने का एक तरीका दिखाता है।
नीचे दिया गया फ़ंक्शन निम्नलिखित कार्य करता है:
  1. Nuke स्क्रिप्ट को दो दृश्य सेट करता है
  2. दिए गए फ़ुटेज के लिए एक रीड नोड बनाता है
  3. एक O_Solver नोड बनाता है और उसे Read से जोड़ता है
  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" के साथ लॉन्च करना होगा, उदाहरण के लिए "Nuke16.0 -t -i" या "Nuke16.0 -ti"

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

कीवर्ड: Ocula , python, O_Solver

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

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