Q100465: Nuke के विभिन्न संस्करणों के लिए प्लग-इन कैसे लोड करें

अनुसरण करें

सारांश

यह आलेख दो अलग-अलग तरीकों की रूपरेखा तैयार करेगा कि आप Nuke के कई संस्करणों के लिए अलग-अलग प्लगइन निर्देशिकाओं को कैसे लोड कर सकते हैं।

यदि आप Nuke के कई अलग-अलग संस्करणों का एक साथ उपयोग कर रहे हैं तो यह मददगार हो सकता है क्योंकि आप पा सकते हैं कि कुछ तृतीय पक्ष प्लगइन्स आपके द्वारा उपयोग किए जा रहे Nuke के सभी संस्करणों के साथ संगत नहीं होंगे।

Nuke 13.0v1 के अनुसार, Python 2 अब समर्थित नहीं है इसलिए जब आप Python 3.7 के साथ संगत होने के लिए अपनी Python स्क्रिप्ट को अपडेट कर रहे हों तो इससे भी मदद मिल सकती है।

अधिक जानकारी

सबसे पहले, आपको प्रत्येक Nuke संस्करण के लिए अपने प्लगइन्स को अलग-अलग निर्देशिकाओं में सहेजना होगा। फिर आप लॉन्च पर लोड करने के लिए Nuke के लिए अतिरिक्त निर्देशिकाएँ जोड़ सकते हैं।

कोई भी प्लगइन जिसे आप केवल Nuke के विशिष्ट संस्करणों के लिए लोड करना चाहते हैं, उसे आपके स्थानीय ~/.nuke फ़ोल्डर में नहीं जोड़ा जाना चाहिए क्योंकि यह निर्देशिका हमेशा लोड होती है (जब तक कि आप सुरक्षित मोड में नहीं चल रहे हों )।

दो तरीके हैं जिनका उपयोग आप Nuke के विभिन्न संस्करणों के लिए प्लगइन्स लोड करने के लिए कर सकते हैं, पहला है प्लगइन pluginAddPath() विधि का उपयोग करके पायथन के माध्यम से प्लगइन निर्देशिकाओं को जोड़ना, या Nuke Studio और Hiero के लिए addPluginPath() विधि का उपयोग करना। दूसरी विधि एक पर्यावरण चर सेट के साथ Nuke , Nuke Studio या Hiero को लॉन्च करने के लिए एक कस्टम रैपर स्क्रिप्ट बना रही है।

दोनों विधियों के बीच का अंतर मूल्यांकन क्रम है pluginAddPath() उपयोग करने से निर्देशिकाएं Nuke के प्लगइन पथ के सामने जुड़ जाएंगी जबकि पर्यावरण चर का उपयोग करने से निर्देशिका आपकी ~/.nuke निर्देशिका के बाद लोड हो जाएगी। निम्नलिखित स्क्रिप्ट एडिटर में nuke .pluginPath() को चलाने का एक उदाहरण है, जिसमें Nuke के प्लगइन पथ में दो निर्देशिकाएँ जोड़ी गई हैं, एक को Python के माध्यम से जोड़ा गया है और एक को पर्यावरण चर के साथ जोड़ा गया है:

आप किस विधि का उपयोग करने का निर्णय लेते हैं यह आपके वर्तमान पाइपलाइन वातावरण और किसी भी निर्भरता पर निर्भर करेगा जिस पर आपके प्लगइन्स भरोसा कर सकते हैं।


पायथन स्क्रिप्ट

Nuke

अपनी init.py फ़ाइल का उपयोग करके , आप परिभाषित कर सकते हैं कि किसी दिए गए Nuke संस्करण के लिए लॉन्च पर कौन सा प्लगइन पथ लोड किया गया है।

यहां पायथन कोड का एक उदाहरण दिया गया है जो जांच करेगा कि आपने Nuke 12 या Nuke 14 लॉन्च किया है या नहीं और तदनुसार प्लगइन पथ लोड करें:

 import nuke

if nuke .NUKE_VERSION_MAJOR==14:
nuke .pluginAddPath(" /path/to/plugins/folder/ nuke 14 ")

if nuke .NUKE_VERSION_MAJOR==12:
nuke .pluginAddPath(" /path/to/plugins/folder/ nuke 12 ")


उपरोक्त कोड केवल आपके द्वारा चलाए जा रहे Nuke के प्रमुख संस्करण की जांच करेगा (यानी Nuke 12, Nuke 14, आदि) लेकिन ' और ' कथन और NUKE _MINOR_VERSION का उपयोग करके, आप अधिक विशिष्ट हो सकते हैं कि Nuke संस्करण निश्चित रूप से लॉन्च होंगे प्लगइन्स। उदाहरण के लिए, यदि संस्करण मेल खाता है तो प्लगइन पथ लोड करने से पहले निम्नलिखित कोड जांच करेगा कि Nuke संस्करण 14.0 है या नहीं:

 import nuke 

if nuke .NUKE_VERSION_MAJOR==14 and nuke .NUKE_VERSION_MINOR==0:

nuke .pluginAddPath(" /path/to/plugins/folder ")


आप NUKE _VERSION_STRING का उपयोग करके पूर्ण Nuke संस्करण की जांच भी कर सकते हैं, जैसे:

 import nuke 

if nuke .NUKE_VERSION_STRING=="14.0v5":

nuke .pluginAddPath(" /path/to/plugins/folder ")

Nuke Studio और Hiero

Nuke के लिए प्लगइन पथ बनाने के समान, Nuke Studio और Hiero के लिए आप ' if ' कथन लिखकर ऐसा कर सकते हैं जो लॉन्च किए गए Nuke Studio / Hiero के संस्करण की जांच करता है और तदनुसार प्लगइन पथ लोड करेगा।

हालाँकि, इस कोड को आपकी ~/.nuke/init.py फ़ाइल में जोड़ने के बजाय , इसे आपकी ~/.nuke/Python/Startup या ~/.nuke/Python/StartupUI निर्देशिकाओं के अंदर एक .py फ़ाइल में सहेजा जाना चाहिए। . आप Nuke Studio और Hiero में प्लगइन पथ जोड़ने के बारे में अधिक जानकारी यहां Nuke Studio Hiero हैं

ध्यान दें: जो अतिरिक्त निर्देशिकाएं आप लोड कर रहे हैं उनमें भी आपके ~/.nuke फ़ोल्डर के समान /Python/Startup या /Python/StartupUI फ़ोल्डर संरचना शामिल होनी चाहिए।

Nuke Studio / Hiero 12 या 13 के लिए लोड किए जाने वाले विभिन्न प्लगइन पथ सेट करने का एक उदाहरण निम्नलिखित है:

import hiero 
from hiero .core import *

if env["VersionMajor"]==14:
# scripts saved in /path/to/plugins/folder/ hiero 14/Python/Startup
hiero .core.addPluginPath("/path/to/plugins/folder/ hiero 14")

if env["VersionMajor"]==12:
# scripts saved in /path/to/plugins/folder/ hiero 12/Python/Startup
hiero .core.addPluginPath("/path/to/plugins/folder/ hiero 12")


Nuke की तरह, आप एक प्रमुख और छोटे संस्करण के लिए प्लगइन पथ को परिभाषित करने के लिए ' और ' कथन के साथ env["VersionMinor"] उपयोग कर सकते हैं। उदाहरण के लिए, निम्नलिखित कोड सभी Nuke Studio / Hiero 14.0 संस्करणों के लिए प्लगइन पथ लोड करेगा:

 import hiero
from hiero .core import *

if env["VersionMajor"]==14 and env["VersionMinor"]==0:
# scripts saved in /path/to/plugins/folder/ hiero 14/Python/Startup
hiero .core.addPluginPath(" /path/to/plugins/folder/ hiero 14 ")

आप env["VersionString"] का उपयोग करके सटीक संस्करण के आधार पर प्लगइन्स भी लोड कर सकते हैं। हालाँकि, कृपया ध्यान दें कि env["VersionString"] के परिणाम में उत्पाद का नाम भी शामिल है (उदाहरण के लिए "Hiero 14.0v5" या "NukeStudio 14.0v5" ):

import hiero 
from hiero .core import *

if env["VersionString"]=="Hiero 14.0v5" or env["VersionString"]=="NukeStudio 14.0v5":
# scripts saved in /path/to/plugins/folder/ hiero 13/Python/Startup
hiero .core.addPluginPath("/path/to/plugins/folder/ hiero 14")

एक रैपर स्क्रिप्ट बनाना

एक रैपर स्क्रिप्ट सिस्टम कमांड या उपयोगिताओं को एक निष्पादन योग्य फ़ाइल में एम्बेड करती है जिससे आप कमांड लाइन में इसे दोबारा टाइप किए बिना, कमांड को बार-बार लागू कर सकते हैं। इस स्थिति में, आप NUKE _PATH या HIERO _PLUGIN_PATH पर्यावरण चर सेट कर सकते हैं और एप्लिकेशन लॉन्च कर सकते हैं। रैपर स्क्रिप्ट के माध्यम से पर्यावरण चर सेट करने का मतलब है कि कमांड केवल उस सक्रिय कमांड लाइन सत्र के लिए सक्षम हैं और यह आपके सिस्टम पर स्थायी रूप से सेट नहीं है।

रैपर स्क्रिप्ट को आपकी मशीन पर कहीं भी सहेजा जा सकता है और उन्हें टर्मिनल में चलाकर निष्पादित किया जा सकता है। आप इन फ़ाइलों को डिफ़ॉल्ट रूप से टर्मिनल में खोलने के लिए भी सेट कर सकते हैं ताकि आप बस उस पर डबल क्लिक करके उन्हें निष्पादित कर सकें।

Nuke

MacOS और Linux के लिए रैपर स्क्रिप्ट में बहुत समान कमांड होते हैं, Nuke एप्लिकेशन निर्देशिका दोनों ऑपरेटिंग सिस्टम के बीच सबसे बड़ा अंतर है। प्रत्येक ऑपरेटिंग सिस्टम पर Nuke 14.0v2 के लिए स्क्रिप्ट के उदाहरण नीचे पाए जा सकते हैं:

मैक ओएस

 #! /bin/bash
export NUKE _PATH=/path/to/some/folder/
/Applications/ Nuke 14.0v5/ Nuke 14.0v5.app/Contents/MacOS/ Nuke 14.0

लिनक्स

 #! /bin/sh
export NUKE _PATH=/path/to/some/folder/
/usr/local/ Nuke 14.0v5/ Nuke 14.0

यह विंडोज़ से काफी अलग है, जहां आपको एक स्क्रिप्ट बनाने की आवश्यकता होगी जो विंडोज़ कमांड प्रॉम्प्ट में कमांड चलाती है। ऐसा करने के लिए, आप एक बैच फ़ाइल (. बैट ) बना सकते हैं जिसमें निम्नलिखित कमांड हैं:

खिड़कियाँ

set NUKE _PATH=/path/to/some/folder
"C:\Program Files\Nuke14.0v5\Nuke14.0.exe"

नोट: आप इस आलेख से जुड़े प्रत्येक ओएस के लिए उदाहरण रैपर स्क्रिप्ट भी पा सकते हैं।

Nuke Studio और Hiero

Nuke Studio और Hiero के लिए, आपको एप्लिकेशन लॉन्च करने से पहले --hiero --studio HIERO _PLUGIN_PATH लॉन्च फ़्लैग का उपयोग करके HIERO _PLUGIN_PATH पर्यावरण चर सेट करना होगा

मैक ओएस

 #! /bin/bash
export HIERO _PLUGIN_PATH=/path/to/some/folder/
/Applications/ Nuke 14.0v5/ Nuke 14.0v5.app/Contents/MacOS/ Nuke 14.0v5 --studio

लिनक्स

 #! /bin/sh
export HIERO _PLUGIN_PATH=/path/to/some/folder/
/usr/local/ Nuke 14.0v5/ Nuke 14.0 --studio

खिड़कियाँ

 set HIERO _PLUGIN_PATH=/path/to/some/folder 
"C:\Program Files\Nuke14.0v5\Nuke14.0.exe" --studio

अग्रिम पठन

Nuke में प्लगइन लोड करने के बारे में अधिक जानकारी हमारे दस्तावेज़ के निम्नलिखित पृष्ठों में पाई जा सकती है:

  1. गिज़्मोस, एनडीके प्लग-इन, और पायथन और टीसीएल स्क्रिप्ट लोड हो रहा है
  2. Nuke प्लग-इन पथ को परिभाषित करना
  3. प्लग-इन स्थापित करना
  4. Hiero के लिए पर्यावरण संबंधी जानकारी
  5. Nuke पर्यावरण चर

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

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