वास्तव में यूवी और यूवीडब्ल्यू मैपिंग क्या है?


26

कुछ बुनियादी 3 डी अवधारणाओं को समझने की कोशिश कर रहा हूं, फिलहाल मैं यह पता लगाने की कोशिश कर रहा हूं कि वास्तव में बनावट कैसे काम करती है। मुझे पता है कि यूवी और यूवीडब्ल्यू मैपिंग ऐसी तकनीकें हैं जो 2 डी बनावट को 3 डी ऑब्जेक्ट में मैप करती हैं - विकिपीडिया ने मुझे उतना ही बताया। मैंने स्पष्टीकरण के लिए गुगली की, लेकिन केवल ऐसे ट्यूटोरियल मिले जिन्होंने यह मान लिया कि मैं पहले से ही जानता हूं कि यह क्या है।

मेरी समझ से, प्रत्येक 3 डी मॉडल अंक से बाहर बना है, और कई बिंदु एक चेहरा बनाते हैं? क्या प्रत्येक बिंदु या चेहरे का एक द्वितीयक समन्वय होता है जो 2D बनावट में कुल्हाड़ी / y की स्थिति के लिए मैप करता है? या मॉडल को मैनिपुलेट कैसे करना है?

इसके अलावा, यूवीडब्ल्यू में डब्ल्यू वास्तव में क्या करता है, यह यूवी पर क्या ऑफर करता है? जैसा कि मैं इसे समझता हूं, डब्ल्यू मैप्स टू द जेड कोऑर्डिनेट करता है, लेकिन किस स्थिति में मेरे पास एक ही एक्स / वाई और अलग-अलग जेड के लिए अलग-अलग बनावट होंगे, क्या जेड हिस्सा अदृश्य नहीं होगा? या मैं इसे पूरी तरह से गलत समझ रहा हूं?


1
अलग से दो प्रश्न पूछें
Noob Game Developer

1
मुझे @NoobGameDeveloper जैसे लोगों से बहुत नफरत है, बाकी सब लोग इस सवाल का जवाब दे रहे हैं और वे जो कर रहे हैं वह उन चीजों का पता लगाने की कोशिश कर रहे हैं जो सवाल के साथ गलत हैं। आओ उन्हें सवाल पूछने दें, मैं यह नहीं कह रहा हूं कि किसी को भी नियमों का पालन नहीं करना चाहिए लेकिन इस तरह के सवाल यहां पोस्ट किए जाने के लिए पूरी तरह से ठीक हैं।
दनियाल आजम

जवाबों:


23

तुम्हारी समझ करीब है। प्रत्येक 3 डी मॉडल कोने से बाहर बना है। प्रत्येक शीर्ष स्थान आम तौर पर अंतरिक्ष में एक बिंदु के स्थान को परिभाषित करता है, एक सामान्य (प्रकाश गणना में उपयोग किया जाता है) और 1 या अधिक बनावट निर्देशांक। इन्हें आमतौर पर बनावट के क्षैतिज भाग के लिए u और ऊर्ध्वाधर के लिए v के रूप में निर्दिष्ट किया जाता है ।

जब किसी ऑब्जेक्ट को टेक्सचर्ड किया जाता है, तो टेक्सचर से प्लॉट करने के लिए कौन से टेक्सल या पिक्सेल को देखने के लिए इन निर्देशांक का उपयोग किया जाता है। मुझे उनके बनावट के बाएं किनारे ( u = 0) के बीच प्रतिशत या अनुपात के रूप में उनके बारे में सोचना आसान लगता है और बनावट के दाईं ओर ( u = 1.0) और बनावट के ऊपर ( v = 0) और नीचे से इसके ( v= 1.0)। वे कोने के बीच प्रक्षेपित होते हैं और प्रत्येक ऑन-स्क्रीन पिक्सेल के लिए देखे जाते हैं जो प्रदान किए जाते हैं। वे इन श्रेणियों की तुलना में बड़ा या छोटा हो सकता है और जब वस्तु प्रदान की जाती है तो रेंडर राज्य निर्दिष्ट करता है कि क्या होता है। इसके लिए विकल्प CLAMP और REPEAT हैं। क्लैम्पिंग समन्वय को 0 या 1 तक सीमित करता है, जिससे बनावट धब्बा होती है जहां यह सीमा के बाहर है। दोहराव बनावट को दोहराता है जब वह सीमा के बाहर होता है; यह प्रभावी रूप से समन्वय के सिर्फ दशमलव भाग को हथियाने और उसके स्थान पर इसका उपयोग करने के समान है।

इससे पहले कि बनावट निर्देशांक किसी ऑब्जेक्ट पर लागू किए जाते हैं, उन्हें कुछ परिवर्तन (जैसे स्केलिंग, अनुवाद या रोटेशन) लागू करने के लिए एक बनावट मैट्रिक्स द्वारा गुणा किया जाता है। यह प्रभाव कभी-कभी खेलों में एनिमेटेड होता है ताकि यह प्रकट हो सके कि कोई वस्तु बिना वस्तु को घुमाए ही चल रही है ... बनावट बस उस पर स्क्रॉल कर रही है। जब टेक्सचर मैट्रिक्स को टेक्सटाइल निर्देशांक से गुणा किया जाता है, तो यह 2 मान उत्पन्न करता है जो टेक्सल को प्लॉट तक देखने के लिए उपयोग किया जाता है (उन्हें एस और टी कहते हैं )। बनावट मैट्रिक्स सेट नहीं होने पर भी ये स्वचालित रूप से यू और वी से उत्पन्न होते हैं ; यह एक पहचान मैट्रिक्स द्वारा यू और वी को गुणा करने के बराबर है ।

यह वह जगह है जहां w समन्वय आता है, हालांकि इसका उपयोग अक्सर नहीं किया जाता है। यह बनावट मैट्रिक्स के खिलाफ गुणा करने के लिए एक अतिरिक्त पैरामीटर है और आमतौर पर इसका उपयोग तब किया जाता है जब आप परिप्रेक्ष्य को ध्यान में रखना चाहते हैं (जैसे कि छाया मानचित्रण में )। जब आप ऑब्जेक्ट-स्पेस को स्क्रीन-स्पेस में एक विश्व-दृश्य-प्रक्षेपण मैट्रिक्स के माध्यम से बदलते हैं तो यह उसी तरह काम करता है। बदलना एक प्रक्षेपण के साथ इस uvw गुणा करके, आप 2 निर्देशांक, अंत रों और टी जो फिर एक 2 डी बनावट पर मैप किया जाता है।


यह ध्यान देने योग्य है कि OpenGL नीचे के रूप में v0 और शीर्ष के रूप में v1.0 व्यवहार करता है। जब मैंने अपने बनावट अजीब लग रहे थे, तो मुझे अतीत में बहुत समय लगा।
tkausl 20

8

एक त्रिकोण पर विचार करें।

प्रत्येक कोने में एक यूवी समन्वय है। आप प्रत्येक पिक्सेल के लिए यूवी निर्देशांक का एक सेट प्राप्त करने के लिए इन दोनों के बीच में प्रक्षेपित करते हैं। (यहां भी खेलने में परिप्रेक्ष्य है लेकिन आइए इसे अनदेखा करें)।

फिर, आप यू और वी के बनावट से बनावट से एक टेक्सल लाते हैं। जो कहना है, बनावट का एक पिक्सेल x को समन्वयित करता है, y - एक ही बात, थोड़ा अलग शब्दावली क्योंकि हम बनावट के बारे में बात कर रहे हैं।

यदि आपकी बनावट वास्तव में 3-आयामी है, तो आपको तीसरे समन्वय की भी आवश्यकता होगी, डब्ल्यू।

यह कल्पना करने का एक तरीका लकड़ी के ब्लॉक के बारे में सोचना है। यदि आप इसे किसी तरह काटते हैं, तो आप देखेंगे कि ब्लॉक के अंदर प्रत्येक विमान में 2 डी बनावट है।

3 डी बनावट इतनी दुर्लभ हैं कि आप उनके बारे में समय के लिए भूल सकते हैं।


दुर्लभ? ये किस काम की लिये प्रायोग होते है? क्या आप एएए शीर्षकों के संदर्भ में कुछ उदाहरण दिखा सकते हैं।
क़ाज़ी इरफ़ान

नहीं, क्योंकि वे आम तौर पर बोल रहे थे कभी इस्तेमाल नहीं किया। एक ही काम करने का हमेशा कुछ सस्ता तरीका है। Wii स्पोर्ट्स प्लस में कटा हुआ आइटम के बारे में सोचो; आप अपनी इच्छानुसार किसी भी तरह से आइटम को तोड़ सकते हैं, और "इंटर्नल" देख सकते हैं। वे 3 डी बनावट (हार्डवेयर भी समर्थन करता है यह मानते हुए) बनाकर भारी मात्रा में मेमोरी को बर्बाद कर सकते थे, लेकिन इसके बजाय 2d बनावट के जोड़े के साथ अनुकरण करना बहुत सस्ता है।
जरी कोमप्पा

तो, वे अनन्य नहीं हैं? या यह किसी भी अच्छी तरह से ज्ञात चीजें खेल इंजन के लिए कोई बहुत जरूरी विशेषता नहीं है?
Quazi इरफान

मुझे समझ नहीं आ रहा है कि आपका क्या मतलब है। 3 डी बनावट केवल बनावट की तुलना में अन्य उपयोगों में उपयोगी हो सकती है, हालांकि; अगर कुछ डेटा को किसी shader को आसानी से 3D सरणी में मैप की आवश्यकता होती है, तो वह एक उपयोग होगा। लेकिन एक "सामान्य" बनावट के रूप में, वे आम तौर पर सिर्फ स्मृति की बर्बादी हैं।
जरी कोमप्पा

3 डी बनावट का एक अनुप्रयोग दूरी मैपिंग है, हालांकि जरी कहते हैं, वे अपनी जटिलता के कारण एक खेल में बहुत असामान्य हैं। [कड़ी] http.developer.nvidia.com/GPUGems2/gpugems2_chapter08.html
Jackalope

7

ओरिगामी सोचें।

एक यूवी मानचित्र आपके 3 डी मेष (शेल) की चपटी (अलिखित) 2 डी त्वचा की तरह है।

यदि आप नक्शे को काटते हैं और इसे जाली लाइनों के साथ मोड़ते हैं, तो परिणाम आपका 3 डी मॉडल होगा।

(U, V) फ्लोटिंग पॉइंट वैल्यू (0,0) से (1,1) तक है। यूवी मैप के ऊपरी बाएं कोने (0,0) का निचला दायां कोना है (1,1)

बहुभुज (ट्रिस / क्वैड) के एक जाल में प्रत्येक शीर्ष पर एक (यू, वी) मूल्य होता है जो रेंडरर को बताता है कि मानचित्र के किस हिस्से का उपयोग करना है।

GPU पाइपलाइन में, वर्टेक्स शेड्स इन 3 डी पॉलीगोन में प्रत्येक पिक्सेल के 2 डी अनुमानों की गणना करते हैं, और फिर यूवी मैप का उपयोग करके टुकड़े के रंग उन्हें रंग देते हैं।

यह पूरी तरह से एक तस्वीर के बिना सराहना नहीं की जा सकती है जो इसे स्पष्ट करता है:

यूवी मेष

जैसा कि अन्य टिप्पणीकारों ने उल्लेख किया है, डब्ल्यू घटक का उपयोग छायांकन मानचित्रण जैसे कट्टर प्रभाव के लिए रेंडरर द्वारा किया जाता है, लेकिन यूवी मानचित्र समझने के लिए आधार है।

ध्यान दें कि प्रत्येक शीर्ष पिक्सेल को हर एक पिक्सेल के लिए कम से कम एक बार एक खंडित छायाकार को कॉल करना होगा, जिसमें रंगीन होना आवश्यक है। यही कारण है कि GPUs दर्जनों कोर के साथ समानांतर प्रोसेसर हैं - shader पाइपलाइन बहुत मांग है।

कृपया यह भी ध्यान दें कि सीपीयू-एकीकृत जीपीयू मोबाइल उपकरणों के लिए डिज़ाइन किए गए हैं और समान पीढ़ी के बाहरी जीपीयू की तुलना में एक दसवें नंबर से कम कोर तक सीमित हैं। इसकी वजह मोबाइल पावर और कूलिंग की कमी है। लगता है कि मूर का कानून धीमा हो गया है, लेकिन प्रदर्शन अभी भी सुधर रहा है (विषम पिघल-डाउन के साथ यहां और वहां ..)

240+ फ्रेम प्रति सेकंड पर अरबों-अरबों पिक्सेल का मानचित्रण एक वास्तविक गर्म गंदगी का कारण बन सकता है!


0

एक मेव बनावट की छवि में एक बिंदु (x, y, z) मेष में एक बिंदु (u, v) पर मैप करता है। एक रंग के लिए एक छवि के नक्शे (यू, वी) के बाद से, दो नक्शे जंजीर हो सकते हैं, जाल अंतरिक्ष से रंग अंतरिक्ष के लिए एक नक्शा उपज।

         uv map       color map
 (x,y,z)   ->   (u,v)    ->     color
 mesh           Texture
 space          space
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.