छाया मानक का मानचित्रण क्यों कर रहा है?


41

हालांकि मैं व्यापार से एक प्रोग्रामर हूं, मैंने खेल के विकास को मुश्किल से छुआ है। मेरे पास कुछ समय के लिए यह प्रश्न है, और अब जब मैं खेल के विकास में लग रहा हूं तो मुझे लगा कि यह एक अच्छा समय होगा।

छाया मानचित्रण छाया बनाने के लिए विशेष तरीके के खेल का उपयोग क्यों प्रतीत होता है? कुंद होने के लिए, यह भयानक लग रहा है। यहां तक ​​कि छाया सेटिंग्स के साथ आधुनिक गेम ने ब्लॉक-वाई छाया को दांतेदार कर दिया है जो बहुत विचलित कर रहे हैं।

कयामत 3, 11 साल पहले बनाए गए छाया खंडों का उपयोग किया था जो किसी भी छाया मानचित्र कार्यान्वयन की तुलना में बहुत बेहतर थे जो मैंने कभी देखा है, जिसमें एएए गेम शामिल हैं उसी सप्ताह जारी किया गया था जिसमें यह प्रश्न पोस्ट किया जा रहा है। कयामत 3 के लिए थर्ड पार्टी मॉड्स ने भी छाया के किनारों को नरम कर दिया, जिससे वे और भी अधिक प्रभावशाली हो गए।

क्या छाया की मात्रा जैसी चीजों को लागू करने के साथ किसी प्रकार की तकनीकी समस्याएँ या सीमाएँ हैं? क्या छाया नक्शे को लागू करना इतना आसान है कि देव कुछ और भी नहीं समझते हैं?

इस विषय पर मुझे केवल एक ही जानकारी मिल पाई है कि वॉल्यूम बनाने वाले पॉलीगोन काफी बड़े हो सकते हैं, और अधिक मांग बन सकते हैं। शायद छाया संस्करणों में सिस्टम की बहुत अधिक आवश्यकताएं हैं, लेकिन अगर ऐसा है तो 2004 में उनका उपयोग करने से वे कैसे दूर हो गए?

यह सवाल छाया मानचित्रण बनाम छाया संस्करणों के लिए विशिष्ट नहीं है, वे केवल 2 हैं जो मैंने पूर्ण उत्पादों में उपयोग किए हैं और मैं अभी किसी भी अन्य तकनीकों पर बहुत अधिक जानकारी नहीं पा सका हूं।


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

1
डूम 3 अपने समय से आगे था जब विकास शुरू हुआ (कम से कम ग्राफिक्स एपीआई का विकल्प दिया गया)। इसकी कई पीढ़ियाँ हार्डवेयर पूर्व-शैडर मॉडल 2.0 की पीढ़ियों को संभालने के लिए थीं और इसका मतलब था कि इंजन का 1/4 भाग मुश्किल से पोर्टेबल है (यह पहले से ही GLSL भी पुराना है) और शेष 3/4 प्राचीन NV और ATI हार्डवेयर एक्सटेंशन के लिए कोडपैथ हैं। उस समय तक अप्रासंगिक थे जब खेल को भेज दिया गया था। स्टैंसिल-शैडो वॉल्यूम का इसका विकल्प शायद इसकी समस्याओं में से सबसे कम था।
एंडन एम। कोलमैन

जवाबों:


48

शैडो मैपिंग और स्टैंसिल शैडो (शैडो वॉल्यूम) निश्चित रूप से बड़े दो हैं, जैसा कि आपने उल्लेख किया है, इसलिए मैं दोनों की तुलना करने के लिए छड़ी करूंगा। और जब से आपने शेडिंग मैपिंग के सबसे स्पष्ट कमियों और स्टैंसिल शैडो के फायदों के बारे में बताया है, मैं इसके विपरीत करूँगा।

स्टैंसिल छाया कमियों

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

छाया मानचित्रण के पक्ष में

सीमा के बिना होने के अलावा मैं विशेष रूप से स्टैंसिल छाया के लिए सूचीबद्ध हूं, मैपिंग करने के लिए कुछ अतिरिक्त फायदे हैं:

  1. अनुमापकता। जबकि छाया मानचित्रण न तो सस्ता है और न ही पूर्ण ( ed: लेकिन स्टैंसिल छाया या तो सस्ता नहीं है ), छाया मानचित्रों के रिज़ॉल्यूशन को बदलकर या छाया के लिए फ़िल्टरिंग को बदलकर प्रदर्शन के लिए निष्ठा का व्यापार करना अपेक्षाकृत आसान है। इससे विभिन्न प्रणालियों के लिए छाया गुणवत्ता / प्रदर्शन को ट्यून करना अपेक्षाकृत आसान हो जाता है। जैसा कि आपने बताया है, यह अक्सर सही नहीं होता है, लेकिन इसमें से बहुत कुछ खिलाड़ी की धारणा पर निर्भर करेगा, और वे जिस रिज़ॉल्यूशन पर खेल रहे हैं (उच्च स्क्रीन रिज़ॉल्यूशन छाया की रुकावट को देखना आसान बना देगा) मैपिंग)। कुछ एएए गेम्स ( फ्रैक्चर की तरह ) सिर्फ सही फिल्टर उठाकर और सही नॉब ट्यून करके शैडो मैपिंग के साथ एक अद्भुत काम करते हैं, जबकि कई बस इसे वहां थप्पड़ मारते हैं और "अच्छा पर्याप्त" कहते हैं।
  2. कुकीज़ (बनावट वाले छाया): एक स्पॉटलाइट, या सना हुआ ग्लास की बनावट जोड़ें, और आप वास्तविक दुनिया के प्रकाश स्रोतों के सभी प्रकार का अनुकरण कर सकते हैं। यह स्टैंसिल शैडो के साथ भी उल्लेखनीय है, वैसे भी, लेकिन छाया मानचित्रण के लगभग सभी सेट को वैसे भी शामिल किया जाता है (वस्तुओं पर प्रकाश की बनावट को प्रोजेक्ट करने के लिए उपयोग किए जाने वाले समान प्रोजेक्शन मैट्रेस शैडो मैपिंग के लिए उपयोग किए जाते हैं)।
  3. पारदर्शी छाया: अधिकांश खेल इसके साथ ज्यादा प्रयास नहीं करते हैं, लेकिन छाया के मानचित्रण के साथ पारदर्शी छाया संभव है। मेरा मतलब सिर्फ अल्फा कटआउट जैसे पेड़ों और बाड़ से नहीं है, जैसा कि मैंने पहले उल्लेख किया है, लेकिन मेरा मतलब है कि आंशिक रूप से पारदर्शी छाया, जैसे धुएं और धूल से।

उन सूचियों में से कोई भी संपूर्ण नहीं है।

इसलिए जबकि छाया मानचित्रण और स्टैंसिल छाया के बारे में आपकी टिप्पणियां सही हैं, स्टैंसिल छाया की कमियां बहुत सारे वांछनीय प्रभावों के लिए शो-स्टॉपर्स हैं, और छाया मानचित्रण के अपने कुछ फायदे हैं।


1
आह, मैं इन चीजों में से अधिकांश पर विचार करने में विफल रहा और पत्तियों की तरह पारदर्शी बनावट एक काफी बड़ा मुद्दा है। जवाब के लिए धन्यवाद!
3

1
कोई समस्या नहीं है :) इनमें से कुछ को याद करना आसान है!
जिब स्मार्ट

8
मैं कहूंगा कि छाया संस्करणों के साथ एक अतिरिक्त मुद्दा यह है कि गहराई-पास छाया के अंदर कैमरा पसंद नहीं करता है, और गहराई-विफल पेटेंट है।
मोनिका

अच्छी बात है, अंगे। मैंने कहा है कि स्टैंसिल छाया का उपयोग नहीं करने के कारणों के लिए, और मुख्य कारण स्पष्ट किया कि स्टैंसिल छाया का उपयोग न करने के लिए "सबसे बड़ा तकनीकी कारण" के रूप में उनका उपयोग न करें, क्योंकि पेटेंट मुद्दा अपने आप में एक शो-स्टॉपर हो सकता है।
जिब स्मार्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.