टॉमटैगस्क के सही उत्तर पर विस्तार करते हुए, मैंने सोचा कि यह इस तरह से काम करने के बारे में थोड़ा और वर्णन करने में मदद कर सकता है।
खेल में प्रकाश वास्तव में स्रोत से सतह तक, कैमरे तक "यात्रा" नहीं करता है, रास्ते में बाधा बन रहा है।
किसी दिए गए प्रकाश के आधार पर सतह के प्रत्येक पिक्सेल को खींचने के लिए कितना उज्ज्वल है, यह जानने के लिए, हम एक गणित सूत्र का उपयोग करते हैं (या लगभग) सतह के सामने की दिशा और सतह पर इस बिंदु से प्रकाश स्रोत तक दिशा का उपयोग करते हैं। बस इतना ही, यह जिस दिशा से चमक रहा है - हम आम तौर पर यह जांचने के लिए किरण नहीं डालते हैं कि प्रकाश वास्तव में इस पिक्सेल तक पहुँचता है या नहीं, क्योंकि स्क्रीन पर हर पिक्सेल के लिए ऐसा करना और दृश्य में सभी विस्तृत ज्यामिति के विरुद्ध किरण की जाँच करना है। आमतौर पर रियल टाइम गेम के लिए अभी भी बहुत महंगा है।
इसलिए, डिफ़ॉल्ट रूप से, कोई गेम लाइट छाया नहीं डालती है। एक प्रकाश की दिशा रास्ते में एक छायाकार होने पर भी समान रहती है, इसलिए गणित हमें समान चमक मूल्य देता है।
यदि हम छाया का अनुकरण करना चाहते हैं, तो हमें अलग से करना होगा। एक सामान्य तरीका है जिसे शैडो मैप कहा जाता है। इस संस्करण में, इससे पहले कि हम अपने दृश्य को छायांकित करते हैं, हम पहले दृश्य को प्रत्येक प्रकाश के परिप्रेक्ष्य से प्रस्तुत करते हैं, जैसे कि प्रकाश एक कैमरा था, प्रत्येक पिक्सेल की गहराई को संग्रहीत करता है जो इसे ऑफ-स्क्रीन बनावट में देखता है।
फिर, जब हम दृश्य को छाया करते हैं, तो हम इस पिक्सेल की गणितीय दूरी की तुलना प्रकाश स्रोत से कर सकते हैं। बनाम गहराई जिसे हमने छाया मानचित्र में संबंधित पिक्सेल में दर्ज किया था। यदि छाया मानचित्र की गहराई छोटी है, तो इसका मतलब है कि यहां और प्रकाश के बीच एक और सतह है, और हम इस पिक्सेल को छाया में आकर्षित करते हैं।
इन नक्शों पर आधारित छाया को कम कलाकृतियों / अलियासिंग के साथ बनाने के लिए बहुत सारी शांत तकनीकें मौजूद हैं, लेकिन मैं अभी के लिए उन पर चमक लाऊंगा। यह कहने के लिए पर्याप्त है, वे आम तौर पर या तो मुक्त नहीं हैं।
क्योंकि इसके लिए प्रत्येक प्रकाश के दृष्टिकोण से पूरे दृश्य को फिर से (ऊपर) रेंडरिंग की आवश्यकता होती है - अगर यह एक बिंदु प्रकाश है जो सभी दिशाओं में चमकता है तो छह गुना तक {उत्तर, दक्षिण, पूर्व, पश्चिम, ऊपर, नीचे}, और हमें फिर से आवश्यकता है -छवि के नक्शे को कभी भी हिलाएं, इससे कुछ भी महंगा हो सकता है।
इसलिए खेल अक्सर दृश्य में सबसे महत्वपूर्ण रोशनी - जैसे दिशात्मक सूर्य प्रकाश - पर उनके प्रतिपादन बजट पर ध्यान केंद्रित करेंगे ताकि यह सुनिश्चित हो सके कि उनके पास अच्छी दिखने वाली छाया है। विस्फोट की फ्लैश की तरह छोटी, अल्पकालिक, छोटी रोशनी अक्सर क्षम्य होती है यदि वे अतीत में एक छोटे से रिसाव करते हैं। अक्सर यह सभी अतिरिक्त छाया मानचित्र रेंडरिंग और गणना से लागत में अचानक वृद्धि के कारण फ्रैमर्ट में एक अड़चन की तुलना में खिलाड़ियों के लिए अधिक स्वादिष्ट होता है। खासकर अगर यह एक व्यस्त एक्शन सीन है जहां तरलता पिक्सेल पूर्णता से अधिक मायने रखती है।