लक्षण
आपने Nuke में Edit > Preferences... के तहत अपना पथ प्रतिस्थापन सेट किया है, लेकिन कमांड लाइन रेंडरिंग या पायथन टर्मिनल मोड के दौरान फ़ाइल पथ सही ढंग से प्रतिस्थापित नहीं किए गए हैं। आपका पथ प्रतिस्थापन इस प्रकार दिखेगा:
कारण
फ़ाइल पथों को कमांड लाइन रेंडर या पायथन टर्मिनल मोड पर सही ढंग से प्रतिस्थापित नहीं किया जा सकता है क्योंकि जब Nuke को GUI मोड के बाहर चलाया जाता है तो प्राथमिकताएँ लोड नहीं होती हैं।
टर्मिनल मोड (जीयूआई के बिना) आपको जीयूआई लॉन्च किए बिना पायथन कमांड दर्ज करने की अनुमति देता है।
इस मोड के दौरान एक >>> कमांड प्रॉम्प्ट प्रदर्शित होता है। कमांड लाइन मोड (बैच मोड) आपको अपनी Nuke स्क्रिप्ट (जीयूआई के बिना) प्रस्तुत करने के लिए टर्मिनल में कमांड चलाने की अनुमति देता है।
कृपया अधिक जानकारी के लिए कमांड लाइन ऑपरेशंस पर Nuke ऑनलाइन सहायता देखें।
संकल्प
इसे हल करने के लिए, आप कमांड लाइन तर्क --remap
का उपयोग कर सकते हैं, जो पथ प्रतिस्थापन जोड़े की एक सूची लेगा और केवल सक्रिय Nuke सत्र के लिए काम करेगा, या इसे सभी में लगातार बनाए रखने के लिए अपनी init.py फ़ाइल में एक फ़ाइल नामफ़िल्टर कॉलबैक सेट करेगा। Nuke सत्र.
वर्तमान Nuke सत्र
टर्मिनल मोड में Nuke चलाते समय ध्वज का उपयोग कैसे किया जाता है इसका एक उदाहरण यहां दिया गया है:
nuke -t --remap "X:/path,Y:,A:,B:/anotherpath"
कहाँ:
nuke
उपयुक्त Nuke निष्पादन योग्य स्थापना स्थान का संदर्भ देता है:विंडोज़ : C:\Program Files\Nuke14.0v5\Nuke14.0.exe
OSX : /एप्लिकेशन/ Nuke 14.0v5/ Nuke 14.0v5.app/Contents/MacOS/ Nuke 14.0
लिनक्स : /usr/local/ Nuke 14.0v5/ Nuke 14.0-
X:/path
से शुरू होने वाले किसी भी पथ कोY:
से शुरू करने के लिए परिवर्तित कर दिया जाता है। -
A:
से शुरू होने वाले किसी भी पथ कोB:/anotherpath
से शुरू करने के लिए परिवर्तित कर दिया जाता है।
विभिन्न ऑपरेटिंग सिस्टमों के बीच पथों को प्रतिस्थापित करने के लिए, आपका कमांड उदाहरण के लिए इस प्रकार दिखेगा:
nuke -t --remap "/home/project/shot/,C:/project/shot"
ध्यान दें: पथ मैपिंग केवल वर्तमान Nuke सत्र पर लागू होती है और वे Nuke GUI चलाते समय उपयोग की जाने वाली Preferences.nk फ़ाइल को प्रभावित नहीं करते हैं।
एकाधिक Nuke सत्र
कई Nuke सत्रों में अपने पथ प्रतिस्थापन को लगातार बनाए रखने के लिए आप फ़ाइलनामफ़िल्टर कॉलबैक का उपयोग कर सकते हैं। निम्नलिखित उदाहरण दिखाता है कि पिछले उदाहरण के समान परिदृश्य के लिए इसे कैसे सेट अप करें:
import nuke
def myFilenameFilter(filename):
filename = filename.replace( 'X:/path', 'Y:/' )
filename = filename.replace( 'A:/', 'B:/anotherpath' )
return filename
nuke .addFilenameFilter(myFilenameFilter)
इस कोड को सभी टर्मिनल सत्रों में निष्पादित करने के लिए, आपको कोड को अपनीinit.py फ़ाइल में जोड़ना होगा।
फ़ाइलनामफ़िल्टर कॉलबैक के बारे में अधिक जानकारी Nuke पायथन डेवलपर गाइड में भी पाई जा सकती है।
हम चाहते हैं कि खेद व्यक्त करते हैं
कृपया हमें बताएँ कि