சுருக்கம்
Nuke இல் 3D பொருளின் இயக்க மங்கலை அதிகரிப்பதற்கான நிலையான வழி, ScanlineRender முனைக்குள் மாதிரிகளை அதிகரிப்பதாகும். இந்த மாதிரி மதிப்புகள் பிரேம்களுக்கு இடையில் கணக்கிடப் பயன்படுத்தப்படும் இடைக்கணிப்பு தரவுகளின் அளவைக் கட்டுப்படுத்துகிறது. அதுபோல, மாதிரி மதிப்புகள் பெரியதாக இருந்தால், இயக்கம் மங்கலாக இருக்கும்.
இந்த மாதிரி மதிப்புகளை அதிகரிப்பது பட செயலாக்க நேரத்தை கணிசமாக அதிகரிக்கும் மற்றும் இது மிகவும் சிக்கலான திட்டங்களில் செயல்திறனை பாதிக்கும்.
இந்த செயலாக்க மேல்நிலையைத் தவிர்க்க, மாற்றாக இந்த கணக்கீட்டை ஸ்கேன்லைன் ரெண்டர் முனைக்கு வெளியே செயல்படுத்தலாம். VectorBlur முனைக்குள் ScanlineRender node உருவாக்கிய இயக்க திசையன்களைப் பயன்படுத்துவதன் மூலம் இதை அடையலாம்.
VectorBlur node (VectorBlur2 மறு செய்கை) பயன்படுத்தி பணிப்பாய்வு எவ்வாறு உருவாக்கப்படலாம் என்பதை இந்தக் கட்டுரை விளக்குகிறது.
மேலும் தகவல்
ScanlineRender node இயல்பாக, Nuke உள்ள 3D பொருளில் இருந்து மோஷன் வெக்டர் பாஸ்களை உருவாக்குகிறது. மோஷன் வெக்டார் தாங்களாகவே ஒரு அடுக்கின் சிவப்பு மற்றும் பச்சை சேனல்களுக்குள் நிலைத் தகவலை எண் மதிப்புகளாக சேமிக்கிறது. இந்த பாஸ்களின் மதிப்புகள் நோக்கம் கொண்ட நிறத்தைப் பிரதிநிதித்துவப்படுத்துவதில்லை, ஆனால் ஷாட்டில் நகரும் பொருட்களின் திசை, வேகம் மற்றும் நிலை ஆகியவற்றில் ஏற்படும் மாற்றங்களைக் கண்டறிய Nuke பயன்படுத்தப்படுகிறது.
ScanlineRender முனையில் உள்ள மோஷன் வெக்டர் தகவல் முன்னிருப்பாக முன்னோக்கி லேயரில் சேமிக்கப்படும், ஆனால் அது மோஷன் லேயரில் அல்லது தனிப்பயனாக்கப்பட்ட லேயரில் சேமிக்கப்படும்.
உருவாக்கப்படும் இந்த இயக்க திசையன் தகவல், பட செயலாக்கத்தின் வேகமான நிலையை அனுமதிக்க, VectorBlur முனையில் படிக்கலாம். ஸ்கேன்லைன் ரெண்டர் முனையிலிருந்து உருவாக்கப்படும் லேயரைப் போன்று uv சேனல்கள் மூலத்தை வரையறுப்பது போன்ற செயல்முறை எளிமையானது. பல முன்னமைக்கப்பட்ட விருப்பங்கள் உள்ளன, ஆனால் சிறந்த முடிவுகளுக்கு Nuke ScanlineRender முன்னமைவை பரிந்துரைக்கிறோம்.
இந்த பணிப்பாய்வுக்கு பல நன்மைகள் உள்ளன:
1) VectorBlur முனையானது செயலாக்கத்திற்கு GPU ஐப் பயன்படுத்துவதற்கான விருப்பத்தைக் கொண்டிருப்பதால், GPU முடுக்கத்திற்கான எங்களின் பரிந்துரைக்கப்பட்ட விவரக்குறிப்புகளுடன் உங்கள் கணினி பொருந்தினால், இந்த செயல்முறை மிகவும் திறமையானதாக இருக்கும்.
GPU முடுக்கத்திற்கான எங்களின் பரிந்துரைக்கப்பட்ட குறைந்தபட்ச விவரக்குறிப்புகள் பற்றிய மேலும் தகவலுக்கு, பின்வரும் இணைப்பைப் பார்க்கவும்: Nuke System Requirements
2) VectorBlur முனையானது 2D அடிப்படையிலான தகவலை u மற்றும் v மதிப்புகள் மூலம் மட்டுமே விளக்குகிறது, இது தேவையான செயலாக்கத்தின் அளவைக் குறைக்கிறது.
3) VectorBlur கணு மற்றும் இயக்கம் திசையன் கணக்கீடுகள் ScanlineRender முனைக்கு வெளியே இருப்பதால், VectorBlur முனையையே முடக்குவதன் மூலம் இயக்க மங்கலை முடக்குவது எளிது.
4) மோஷன் வெக்டார் கணக்கீடுகளை 2டி டேட்டாவாக ரெண்டர் செய்து, மீண்டும் Nuke படிக்கலாம், பின்னர் 3டி காட்சியில் முந்தைய செயலாக்கத்தைத் தவிர்க்கப் பயன்படுத்தலாம்.
இந்த செயல்முறையை மீண்டும் உருவாக்குவதற்கான படிகளின் பட்டியலுடன் ஒரு எடுத்துக்காட்டு பணிப்பாய்வு கீழே உள்ளது.
எடுத்துக்காட்டு பணிப்பாய்வு
இந்த செயல்முறைக்கு இரண்டு கட்டங்கள் தேவை. முதல் கட்டமானது, ஸ்கேன்லைன்ரெண்டர் முனையில் இயக்க திசையன் பாஸின் சரியான உருவாக்கம் ஆகும், மேலும் இரண்டாம் கட்டமானது இந்த இயக்க திசையன்களின் சரியான ஒருங்கிணைப்பு VectorBlur முனையில் செல்கிறது.
கட்டம் 1: ஸ்கேன்லைன் ரெண்டர்
1) 3D பொருளுக்கு ஷேடராகப் பயன்படுத்த ஒரு செக்கர்போர்டு முனையை உருவாக்கவும்
2) ஒரு கோள முனையை உருவாக்கவும், x இல் '-2' மதிப்பில் ஒரு கீஃப்ரேமையும், ஃபிரேம் 10 இல் '2' மதிப்பில் மற்றொரு கீஃப்ரேமையும் அமைக்கவும். (இது 3D இடத்தில் ஸ்பியரை அனிமேட் செய்து அடிப்படையை உருவாக்கப் பயன்படும். இயக்கம் தெளிவின்மை)
சட்டகம் 1 சட்டகம் 10
3) ஸ்பியர் முனையின் img உள்ளீட்டை செக்கர்போர்டு முனையுடன் இணைக்கவும்
4) ஒரு கேமரா முனையை உருவாக்கி, மொழிபெயர்ப்பு z மதிப்பை '10' ஆக அமைக்கவும். (இது கோளத்தை 3D இடத்தில் வடிவமைக்கும்)
5) ஒரு ScanlineRender முனையை உருவாக்கி, கேமரா [3D கிளாசிக்] முனையை கேம் உள்ளீட்டிலும் ஸ்பியர் நோடை obj/scn உள்ளீட்டிலும் இணைக்கவும்.
6) ஸ்கேன்லைன் ரெண்டருக்குள், மல்டிசாம்பிள் தாவலில் மாதிரி மதிப்பு குமிழ் '1' ஆக அமைக்கப்பட்டிருப்பதை உறுதிசெய்யவும்
7) அசைவு திசையன்களுக்கான ஷேடர் டேப்பின் குமிழ் 'தொலைவு' மற்றும் இயக்க திசையன் சேனல்கள் 'முன்னோக்கி' அமைக்கப்பட்டுள்ளதை உறுதி செய்யவும்.
கட்டம் 2: VectorBlur
1) VectorBlur முனையை உருவாக்கி, ScanlineRender முனையில் உள்ளீட்டை இணைக்கவும்
2) uv சேனல்கள் குமிழியை மாற்றி, ' முன்னோக்கி ' லேயருக்கு அமைக்கவும்
3) எம்வி முன்னமைவு குமிழ் ' Nuke ஸ்கேன்லைன் ரெண்டர்' என அமைக்கப்பட்டிருப்பதை உறுதிசெய்யவும்
4) மங்கலான யுவி குமிழியை மாற்றி ' லீனியர் ' என அமைக்கவும். (இது இயல்புநிலையாக இருந்தால், இது விளிம்புகளில் தவறான இடைக்கணிப்பை உருவாக்கும்)
5) மோஷன் அளவு குமிழியை மாற்றி, நீங்கள் விரும்பும் மோஷன் மங்கலான அளவுக்கு அமைக்கவும்.
6) மோஷன் ஃபாலோஃப் குமிழியை ' 0.2 ' மதிப்புக்கு மாற்றவும். (உத்தேசிக்கப்பட்ட இடைக்கணிப்பைப் பொறுத்து வீழ்ச்சியைக் கட்டுப்படுத்த இந்தக் கட்டுப்பாடு பயன்படுத்தப்படலாம்)
7) இந்த எடுத்துக்காட்டின்படி, உங்கள் ஸ்கேன்லைன்ரெண்டர் முனையின் வெளியீடு கருப்பு நிறத்தில் இருந்தால் மற்றும் படத்தின் பரப்பளவைக் கணக்கிட ஒரு எல்லைப் பெட்டியைப் பயன்படுத்தினால், விரிவாக்க மங்கலான bbox குமிழியை உங்கள் எல்லைப் பெட்டியை அனுமதிக்கும் மதிப்புக்கு மாற்ற வேண்டும். படத்தை வெட்டவில்லை.
உங்கள் உள்ளீட்டு படத்தின் அடிப்படையில் இந்த அளவு மாறுபடும், எனது எடுத்துக்காட்டில் நான் ' 50 ' மதிப்பைப் பயன்படுத்துகிறேன்.
பல்வேறு மதிப்புகளின் ஒப்பீட்டைக் கீழே காணலாம்:
விரிவாக்க மங்கலான bbox = 0 விரிவாக்க மங்கலான bbox = 50
குறிப்பு: மேலே உள்ள பணிப்பாய்வு இணைக்கப்பட்ட ஸ்கிரிப்ட்டில் மீண்டும் உருவாக்கப்பட்டுள்ளது: Alternative3DMotionBlur.nk
முடிவுகள் ஒப்பீட்டு சோதனை
உதாரணமாக, அசல் செயல்முறைக்கும் VectorBlur பரிந்துரைக்கப்பட்ட மாற்று செயல்முறைக்கும் இடையிலான ஒப்பீட்டின் திரைப் பதிவை இணைக்கப்பட்டிருப்பதைக் காணலாம்: Alternative3DMotionBlur_comparison.mp4.
கூடுதலாக, பின்வரும் இணைக்கப்பட்ட ஸ்கிரிப்ட்டில் இந்த சோதனையை நீங்களே இயக்க அனுமதிக்கும் ஒப்பீட்டு சோதனையைச் சேர்த்துள்ளோம்: Alternative3DMotionBlur.nk
25 பிரேம் ரெண்டரை ஒப்பிடும் போது வெக்டர் ப்ளூர் முனை வழியாக உருவாக்கப்படும் மோஷன் மங்கலானது குறிப்பிடத்தக்க வகையில் வேகமாக இருப்பதைக் காட்டும் மேலே குறிப்பிடப்பட்ட பதிவிலிருந்து இரண்டு ஒப்பீட்டுப் படங்கள் கீழே உள்ளன:
VectorBlur
ஸ்கேன்லைன் ரெண்டர்
குறிப்பு: ஸ்கேன்லைன் ரெண்டர் முனையில் உள்ள மோஷன் மங்கலான மாதிரிகள், அதே முடிவை அடைய தேவையான குறைந்தபட்ச அளவு மாதிரிகளைப் பயன்படுத்தி, முடிந்தவரை நெருக்கமாகப் பொருத்தப்பட்டுள்ளன.
ScanlineRender node இன் மாதிரிகளை அதிகரிப்பதற்கு மாற்றாக VectorBlur முனைக்குள் இயக்க திசையன்களைப் பயன்படுத்துவது, தேவையான செயலாக்கத்தின் அளவைக் குறைக்கிறது என்பதை மேலே உள்ள ஒப்பீட்டிலிருந்து நீங்கள் பார்க்கலாம். பெரிய மற்றும் சிக்கலான 3D ரெண்டரிங் அடிப்படையிலான ஸ்கிரிப்ட்களில் இது மிகவும் குறிப்பிடத்தக்கதாக இருக்கும்.
குறிப்பு: இந்த செயல்முறையை ScanlineRender முனைக்கு பதிலாக RayRender முனையிலும் அடையலாம். இது சரியாக வேலை செய்ய RayRender nodes 'AOV' தாவலில் உள்ள பின்வரும் விருப்பங்கள் மாற்றப்பட வேண்டும்:
'
1) வெளியீட்டு AOV தேர்வுப்பெட்டியை மாற்ற வேண்டும்
2) மோஷன் வெக்டர் பாஸ் சரியான லேயரை வெளியிடுவதற்கு அமைக்கப்பட வேண்டும், எங்கள் எடுத்துக்காட்டில் 'முன்னோக்கி' லேயருக்கு மேலே இருந்து.
மேலும் படிக்க
VectorBlur மற்றும் ScanlineRender கணுக்கள் இரண்டையும் பற்றிய கூடுதல் தகவல்களை Nuke ஆவணத்தில் பின்வரும் இணைப்புகள் மூலம் காணலாம்:
திசையன் மங்கலான முனை
ஸ்கேன்லைன் ரெண்டர் முனை
We're sorry to hear that
Please tell us why