एचएलएसएल पारभासी प्लास्टिक शेडर


12

मैं अंदर एक रंगीन प्रकाश के साथ एक सफेद प्लास्टिक वस्तु को दोहराने के लिए एक shader का उत्पादन करने की कोशिश कर रहा हूं। या तो एक shader होने से जो पारभासी होगा और अगर मैं ऑब्जेक्ट के अंदर एक प्रकाश डालूँगा तो प्रकाश एक shader होने के माध्यम से या उसके अंदर दिखाई देगा जो प्रकाश के प्रभाव को कम करता है।

इम्पैक्ट इमे के लिए जा रहा है जैसे कि एक लाइट इन तस्वीरों के समान एक लैंप शेड के माध्यम से जा रहा है:

वैकल्पिक शब्द वैकल्पिक शब्द वैकल्पिक शब्द

आदर्श रूप से मैं प्रकाश की शक्ति और रंग को नियंत्रित करने और इसे कुछ अच्छे चमकीले फ्लोरो रंगों के माध्यम से नाड़ी में लाने में सक्षम होगा

हालांकि मुझे यकीन नहीं है कि कहां से शुरू करना है!

मेरा सवाल यह है कि क्या किसी को ऐसी तकनीकों का पता है, जिनके बारे में मुझे पता होना चाहिए कि मैं इस तरह के शेडर का उत्पादन करने में सक्षम होना चाहिए या उसी / समान शेडर का उदाहरण होना चाहिए जिसे मैं शुरुआती बिंदु के रूप में उपयोग कर सकता हूं? या यहां तक ​​कि अगर आप एक shader प्रदान करना चाहते हैं जो काम कर सकता है

जवाबों:


10

यह एक प्रभाव है जिसे "सब सरफेस स्कैटरिंग" के रूप में जाना जाता है।

"जीपीयू प्रो: एडवांस्ड रेंडरिंग तकनीक" पुस्तक में इसका एक उदाहरण स्क्रीन स्पेस कार्यान्वयन है जो वास्तविक समय के उपयोग के लिए उपयुक्त है।


0

मुझे एचएसएसएल का पता नहीं है इसलिए मैं सटीक उत्तर नहीं दे सकता। आप मूल रूप से जो कर सकते हैं, वह रोशनी से दूरी के आधार पर प्रत्येक टुकड़े का रंग सेट करना है (किसी भी आत्म-छायांकन की अनदेखी करना)।

स्यूडोकोड में यह कुछ इस तरह होगा:

टुकड़ा_ रंग = प्रकाश_ घनत्व * पारदर्शिता_ रंग * रोशनी_कोलर / (क्षीणन * दूरी_तक_ प्रकाश स्रोत ^ २)

तुम भी एक रैखिक क्षीणन कारक का उपयोग करना चाहते हो सकता है के अलावा प्रकाश को और अधिक फैलाने के लिए प्रकाश पाने के लिए।


0

क्या प्रकाश को स्थानांतरित करने में सक्षम होने की आवश्यकता है, और क्या वस्तु को विकृत / चेतन करने में सक्षम होने की आवश्यकता है? यदि इनमें से कोई भी मामला नहीं है, तो ऐसा करने का एक सस्ता तरीका उस वस्तु पर एक मोनोक्रोम बनावट का नक्शा लागू करना होगा जो प्रकाश के लिए मुखौटा के रूप में कार्य करता है; इस बनावट में आप जिस शेप में हैं, उसे वर्तमान लाइट कलर / स्ट्रेंथ से गुणा करके आउटपुट कलर में जोड़ें।

स्पष्ट अनुवर्ती सवाल यह है कि आप इस बनावट को कैसे उत्पन्न करेंगे? आप इसे चित्रित करने का प्रयास कर सकते हैं, यदि आपके पास किसी कलाकार की पहुंच है या आप स्वयं बनावट को चित्रित कर सकते हैं। यह भी एक ऑफ़लाइन उपकरण द्वारा प्रदान किया जा सकता है किरण या कुछ इस तरह का उपयोग कर। मैं आपको विस्तार से बताने के लिए पर्याप्त साधनों के साथ परिचित नहीं हूँ कि इसे कैसे स्थापित किया जाए, हालाँकि।

एक अलग दृष्टिकोण एक शेडर लिखने के लिए हो सकता है जो इसके पीछे की रोशनी का नमूना लेता है, नियमित लैम्बर्ट डिफ्यूज़ शेवर समीकरण में उलट सतह का उपयोग करके; तब आप इसे कुछ मास्क फैक्टर जैसे 0.5 या तो गुणा करके आउटपुट कलर में जोड़ देंगे। यह गतिशील रूप से प्रकाश या ज्यामिति को स्थानांतरित करने की अनुमति देगा, और किसी बनावट की आवश्यकता नहीं होगी, लेकिन आपको संभवतः ऑफ़लाइन रेंडर के रूप में अच्छे दिखने वाले परिणाम नहीं मिलेंगे।

उपसतह बिखरने के बारे में: मुझे नहीं लगता कि ठीक वही है जो यहाँ चाहता था क्योंकि ग्राफिक्स के लिए सभी एसएसएस एल्गोरिदम मैंने देखा है कि प्रकाश के लिए डिज़ाइन किया गया है जो सतह के बाहर से आता है , थोड़ा सा घूमता है और फिर से बाहर निकल जाता है, जबकि यहाँ प्रकाश अंदर है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.