Q100343: Nuke Studio மற்றும் Hiero இல் உள்ள கிளிப்களுக்கு OCIOCDLTransform மென்மையான விளைவுகளை தானாக உருவாக்குவது மற்றும் .cc கோப்பு பாதைகளை அமைப்பது எப்படி

சுருக்கம்

இந்தக் கட்டுரை, உங்கள் Nuke Studio அல்லது Hiero காலவரிசையில் உள்ள ஒவ்வொரு கிளிப்பிற்கும் OCIOCDLTransform மென்மையான விளைவை எவ்வாறு தானாக உருவாக்க Python ஐப் பயன்படுத்தலாம் என்பதை விளக்குகிறது, மேலும் ஒவ்வொரு ஷாட்டிற்கும் ASC CDL கோப்பு பாதையை வரையறுக்கிறது.

மேலும் தகவல்

நீங்கள் NukeStudio அல்லது Hiero வில் உள்ள கிளிப்களுக்கு OCIOCDLTransform மென்மையான விளைவுகளை கைமுறையாக உருவாக்கும்போது, ஒவ்வொரு கிளிப்பிற்கும் ஒரு நேரத்தில் ஒரு விளைவை உருவாக்கலாம், பின்னர் ஒவ்வொரு மென்மையான விளைவுகளுக்கும் .cc கோப்பு பாதையை கைமுறையாக அமைக்க வேண்டும்.

இது அதிக நேரத்தை எடுத்துக்கொள்ளும், குறிப்பாக உங்கள் காலவரிசையில் நிறைய ஷாட்கள் இருந்தால், ஒவ்வொன்றும் பயன்படுத்த அதன் சொந்த .cc கோப்பைக் கொண்டிருந்தால்.

இருப்பினும், இந்த அமைப்பை தானியக்கமாக்க நீங்கள் பைத்தானைப் பயன்படுத்தலாம், கீழே ஒவ்வொரு கிளிப்பிற்கும் OCIOCDLTransform மென்மையான விளைவை உருவாக்கும் மற்றும் ஒவ்வொரு மென்மையான விளைவுக்கும் வெவ்வேறு .cc கோப்பு பாதையைப் பயன்படுத்தும் எடுத்துக்காட்டு குறியீடு உள்ளது:

for trackItem in [y for x in hiero .ui.activeSequence().videoTracks() for y in x.items()]:
trackItemEffect = trackItem.parentTrack().createEffect("OCIOCDLTransform",trackItem=trackItem )
trackItemEffect.node()["read_from_file"].setValue(1)
shotNumber = trackItem.name()[trackItem.name().rfind("_")+1:]
ocioPath = "/path/to/CDL/shot_" + shotNumber + ".cc"
trackItemEffect.node()["file"].setValue(ocioPath)

குறியீட்டை வரி வரியாகப் பிரித்து, ஒவ்வொரு வரியும் என்ன செய்கிறது என்பதற்கான விளக்கம் இங்கே:

1. for trackItem in [y for x in hiero .ui.activeSequence().videoTracks() for y in x.items()]:

இந்த முதல் வரி ஒரு for loop ஐ உருவாக்கி, காலவரிசையில் உள்ள அனைத்து கிளிப்களிலும் மீண்டும் மீண்டும் செல்கிறது. மீதமுள்ள குறியீடு பின்னர் காலவரிசை கிளிப்களின் பட்டியலில் உள்ள ஒவ்வொரு கிளிப்பிற்கும் ஒரு நேரத்தில் பயன்படுத்தப்படும்.

hiero .ui.activeSequence().videoTracks() கட்டளை, காலவரிசையில் தற்போது செயலில் உள்ள வரிசையை வினவுகிறது, ஒவ்வொரு வீடியோ டிராக்கின் அனைத்து கிளிப் உருப்படிகளையும் சுழற்றி அவற்றை ஒரு பைதான் பட்டியலில் சேர்க்கிறது. இது அடுத்த வரிகளிலிருந்து கட்டளைகளைப் பயன்படுத்துவதற்கான கிளிப்களின் முழு பட்டியலையும் உருவாக்குகிறது.

2. trackItemEffect = trackItem.parentTrack().createEffect("OCIOCDLTransform",trackItem=trackItem )

இந்த இரண்டாவது வரி மென்மையான விளைவை உருவாக்கி, அதை நாம் for loop-ல் இருக்கும் தற்போதைய கிளிப்பில் சேர்க்கிறது.


3. trackItemEffect.node()["read_from_file"].setValue(1)

இந்த மூன்றாவது வரி, தற்போதைய கிளிப்பிற்காக உருவாக்கப்பட்ட மென்மையான விளைவில் 'கோப்பிலிருந்து படிக்கவும்' குமிழ் மதிப்பை அமைக்கிறது.


4. shotNumber = trackItem.name()[trackItem.name().rfind("_")+1:]

இந்த நான்காவது வரி கிளிப்பின் ஷாட் எண்ணை உருவாக்குகிறது. இது ஷாட் பெயரை வினவுவதன் மூலம் செயல்படுகிறது, கடைசி அடிக்கோடைக் கண்டுபிடித்து ஷாட்டின் பெயரைப் பிரித்து ஷாட் எண்ணை மட்டும் விட்டுவிடுகிறது.


5. ocioPath = "/path/to/CDL/shot_" + shotNumber + ".cc"

இந்த ஐந்தாவது வரி, இருப்பிட பாதை மற்றும் கோப்பு பெயரிடும் மரபைப் பயன்படுத்தி .cc கோப்பிற்கான பாதையை உருவாக்குகிறது, மேலும் அதை ஷாட் எண் மற்றும் .cc கோப்பு நீட்டிப்புடன் இணைக்கிறது.


6. trackItemEffect.node()["file"].setValue(ocioPath)

இந்த கடைசி வரி, 5வது வரியில் உருவாக்கப்பட்ட ஒன்றிற்கு soft effects கோப்பு பாதையை அமைக்கிறது.

குறிப்பு: இந்த குறியீடு ஷாட்களுக்கும் .cc கோப்பு பாதைகளுக்கும் நிறுவப்பட்ட பெயரிடும் மரபின் அடிப்படையில் செயல்படுகிறது. இதை உங்கள் பணிப்பாய்வுக்கு ஏற்ப மாற்ற, உங்கள் திட்டத்திற்குப் பயன்படுத்தப்படும் பெயரிடும் மரபிற்கு ஏற்ப வரிகள் 4 மற்றும் 5 ஐ சரிசெய்ய வேண்டும்.

ஸ்கிரிப்ட் எடிட்டரில் குறியீடு இயக்கப்பட்டு, Nuke Studio காலவரிசையில் உள்ள அனைத்து கிளிப்களுக்கும் OCIOCDLTransform மென்மையான விளைவுகள் உருவாக்கப்பட்டதன் முடிவு கீழே உள்ளது:

    We're sorry to hear that

    Please tell us why