कई रोशनी के साथ तेज रोशनी


10

मैं कई रोशनी के साथ तेजी से प्रकाश कैसे लागू कर सकता हूं?

मैं खिलाड़ी को संयमित नहीं करना चाहता, वह एक असीमित संख्या और संभवतः अतिव्यापी (बिंदु) रोशनी को स्तर में रख सकता है।

समस्या यह है कि शेड्स में डायनेमिक लूप होते हैं जो कि प्रकाश की गणना करने के लिए बहुत धीमी गति से करना आवश्यक होता है।

मेरे पास विचार था कि अगर यह संभव हो सकता है संकलन के लिए एक shader n बार संकलित करने के लिए जहां n रोशनी की संख्या है। यदि संख्या n को कंपाइलटाइम पर जाना जाता है, तो लूप को स्वचालित रूप से अनियंत्रित किया जा सकता है। क्या यह संभव है कि अलग-अलग संख्या में रोशनी के साथ एक ही शेडर के एन संस्करण उत्पन्न हों?

रनटाइम के दौरान मैं यह तय कर सकता था कि किस स्तर के किस हिस्से के लिए उपयोग किया जाए।


यदि खिलाड़ी द्वारा रोशनी को गतिशील रूप से जोड़ा जाता है, तो "कंपाइलटाइम" शेडर सही उत्तर कैसे हो सकता है?
सेठ बत्तीन

जैसा कि मैंने लिखा, संकलक 1,2,3, .. रोशनी के लिए शेड उत्पन्न कर सकता है और रनटाइम पर मैं यह तय कर सकता हूं कि किस स्तर के किस हिस्से के लिए उपयोग करना है
कोडमाइनिक्स

संकलन समय शेडर्स को यह जानने की जरूरत है कि रोशनी कहां रखी जा रही है, रोशनी की किसी भी गतिशीलता उन्हें बर्बाद कर देगी
शाफ़्ट सनकी

केवल रोशनी की संख्या गतिशील होनी चाहिए। पदों को पैरामीटर के रूप में प्रदान किया जाएगा।
कोडमाइनिक्स

1
ऐसा लगता है कि आपके पास आपका जवाब है। आप रोशनी की अधिकतम संख्या और संभावित पदों की सीमा जानते हैं।
ashes999

जवाबों:


8

मेरा मानना ​​है कि आप जो खोज रहे हैं उसे डिफर्ड रेंडरिंग कहा जाता है। यह एक रेंडरिंग तकनीक है जो बहुत सारी रोशनी के साथ बहुत अच्छी तरह से स्केल करती है, ताकि यह गतिशील अप्रत्यक्ष रोशनी के लिए उपयोग किया जा सके। इसका मतलब है कि स्क्रीन पर रोशनी की अधिकता।

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

आप कार्यान्वयन विवरण यहां पा सकते हैं

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