एक यादृच्छिक रंग के बजाय सामान्य नक्शे मुख्यतः नीले क्यों होते हैं?
मुझे लगता है कि एक 3D ऑब्जेक्ट के सामान्य वैक्टर हर दिशा में इंगित कर सकते हैं, जैसे:
(1.0, 0.1, 0.5), (0.1, -0.5, 0.3), (-0.51, 0.46, -1.0) ...
एक यादृच्छिक रंग के बजाय सामान्य नक्शे मुख्यतः नीले क्यों होते हैं?
मुझे लगता है कि एक 3D ऑब्जेक्ट के सामान्य वैक्टर हर दिशा में इंगित कर सकते हैं, जैसे:
(1.0, 0.1, 0.5), (0.1, -0.5, 0.3), (-0.51, 0.46, -1.0) ...
जवाबों:
सामान्य रूप से खेल के विकास में उपयोग किए जाने वाले दो प्रकार के सामान्य नक्शे हैं। जिस तरह से आप सोच रहे हैं कि उन्हें काम करना चाहिए वह एक प्रकार का काम है (मॉडल-स्पेस सामान्य मैप्स), लेकिन अधिकांश गेम एक अन्य प्रकार (स्पर्श-स्थान सामान्य नक्शे) का उपयोग करते हैं, यही कारण है कि आप ज्यादातर-नीले बनावट को सामान्य नक्शे के साथ जोड़ते हैं।
साथ मॉडल अंतरिक्ष सामान्य नक्शे , प्रत्येक चैनल मॉडल इसके साथ प्रयोग किया जाता है के रूप में एक ही कोने समन्वय प्रणाली का उपयोग करते हुए सामान्य की सटीक मूल्य encodes। इसका मतलब है कि सामान्य नक्शे के विभिन्न हिस्सों में अलग-अलग रंग होंगे, लेकिन एक-दूसरे के पास के पिक्सल में आमतौर पर समान रंग होंगे। मॉडल-स्पेस सामान्य मानचित्र का एक उदाहरण ऊपर ( स्रोत ) दिखाई देता है ।
स्पर्शरेखा-स्थान के सामान्य नक्शे आमतौर पर हल्के नीले रंग के होते हैं। इस प्रकार का नक्शा मेष की सतह पर प्रत्येक पिक्सेल की स्थिति के लिए अद्वितीय एक समन्वय स्थान में मानदंडों को परिभाषित करता है। यह Z अक्ष के रूप में (इंटरपोल्टेड) वर्टेक्स सामान्य का उपयोग करता है, और दो अन्य ऑर्थोगोनल वैक्टर, जिसे एक्स और वाई अक्ष के रूप में स्पर्शरेखा और बिटेंगेंट कहा जाता है। अनिवार्य रूप से, आप मानचित्र में मानदंडों के बारे में सोच सकते हैं कि उस पिक्सेल के लिए सामान्य से एक "ऑफसेट" है जो वर्टिकल मानदंडों को प्रक्षेपित करके गणना की जाती है। स्पर्शरेखा और बिटुएंट वैक्टर भी शीर्ष डेटा से प्रक्षेपित होते हैं, और यह निर्धारित करते हैं कि मेष पर कौन सी दिशा सामान्य नक्शे में "ऊपर" और "बाएं" से मेल खाती है। प्रश्न में प्रदान की गई छवि एक विशिष्ट उदाहरण प्रदान करती है कि एक विशिष्ट स्पर्शरेखा-अंतरिक्ष सामान्य नक्शा कैसा दिखता है, इसलिए मैं यहां एक और उदाहरण प्रदान नहीं करूंगा।
सामान्य रूप से (कोई सज़ा नहीं) के घटक से लेकर [-1, 1]
। लेकिन एक छवि में रंग के घटक [0, 1]
(या [0, 255]
आमतौर पर वे सामान्यीकृत हैं [0, 1]
) से लेकर होते हैं । इसलिए मानदंड बड़े किए जाते हैं और ऐसे ऑफसेट किए जाते हैं कि सामान्य (0, 0, 1)
रंग बन जाता है (0.5, 0.5, 1)
। यह हल्का नीला रंग है जिसे आप सामान्य नक्शे में देखते हैं, और यह स्पर्शरेखा-स्थान के मानदंडों का उपयोग करते समय प्रक्षेपित सामान्य से कोई विचलन इंगित करता है।
मॉडल-स्पेस मानदंडों पर स्पर्शरेखा-स्थान मानदंड को प्राथमिकता दी जाती है, इस तथ्य के कारण है कि वे बनाना आसान है, और इसका उपयोग कई जालों के लिए किया जा सकता है। इसके अतिरिक्त, यदि एक एनिमेटेड जाल के साथ उपयोग किया जाता है, तो स्पर्शरेखा-स्थान मानदंड हमेशा उपयोग किए जाते हैं, क्योंकि मानदंड लगातार बदल रहे हैं।
bitangent
और binormal
सही के बीच अंतर पाने के लिए धन्यवाद ।
सामान्य नक्शा ज्यादातर एक सतह से बाहर की ओर इंगित करता है। मान लें कि आप XYZ सामान्य वैक्टर के जेड घटक की सामान्य मैपिंग के साथ "गहराई" दिशा में जा रहे हैं और आरजीबी रंग अंतरिक्ष के बी घटक के लिए एक मैपिंग है, तो आप मुख्य रूप से नीले रंग के होने वाले सबसे सामान्य वैक्टर के साथ समाप्त हो जाएंगे।
यदि बनावट थी, कहते हैं, लाल, तो इसका मतलब यह होगा कि सामान्य नक्शा एक सतह है जो ज्यादातर दाईं ओर इंगित करता है। आप अपनी नमूना छवि पर उस सुविधा को देख सकते हैं क्योंकि धक्कों के दाईं ओर-किनारे उनके लिए एक लाल रंग है।
एक लाल रंग की पूरी सतह का कोई मतलब नहीं होगा। यह एक ऐसी सतह को इंगित करेगा जो पूरी तरह से दाईं ओर का सामना कर रही है। यह सिर्फ ज्यामिति से तैयार किया जाएगा, न कि सामान्य नक्शे का हिस्सा।