कंप्यूटर ग्राफिक्स में Tessellation क्या है


16

हाल के खेलों में मैंने टेसलेशन नाम की कोई चीज देखी है, जिस चीज को चालू करने से मेरी फ्रेम दर नष्ट हो जाती है।

मैंने देखा है कि जब यह चालू होता है तो यह एंटी-अलियासिंग जैसा दिखता है।

क्या कोई मुझे इस बारे में अधिक जानकारी दे सकता है कि GPU क्या करता है।


2
ओह प्रिय, 2 उत्तर और कोई चित्र कंप्यूटर ग्राफिकिस्ट अपने सर्वश्रेष्ठ पर नहीं।
14

जवाबों:


25

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

यह आपको अपने ग्राफिक्स कार्ड पर एक अपेक्षाकृत मोटे जाल को लोड करने, गतिशील रूप से अधिक कोने और त्रिकोण उत्पन्न करने और फिर स्क्रीन पर एक मेष लगाने की अनुमति देता है जो बहुत अधिक चिकना दिखता है।

Tessellation उदाहरण है

अधिकांश समय यह टेसेलेशन प्रत्येक एकल फ्रेम में नए सिरे से किया जाता है और यही कारण हो सकता है कि एक बार इसे सक्षम करने के बाद आपका फ्रेम-दर गिर जाता है।

Tesselation कई चरणों में किया जाता है, और इसे शीर्ष shader के बाद किया जाता है।

चरणों

प्रत्येक चरण की शर्तें API के आधार पर भिन्न होती हैं। डायरेक्टएक्स में, यह हल शेडर, हार्डवेयर टेसेलेशन, और डोमेन शेडर है। ओपनजीएल में, वे टेसलेशन कंट्रोल शेडर, टेसेलेशन प्राइमरी जेनरेशन और टेसेलेशन इवैल्यूएशन शेडर कहलाते हैं।

पहला और आखिरी चरण प्रोग्राम करने योग्य है, वास्तविक टेसलेशन एक निश्चित फ़ंक्शन चरण में हार्डवेयर द्वारा किया जाता है।

Tesselation Control shader में आप उपखंडों के प्रकार और संख्या निर्धारित करते हैं।

फिर हार्डवेयर टेसेलेटर ज्यामिति को नियंत्रण शेडर के अनुसार विभाजित करता है।

अंत में, टेस्यूलेशन इवैल्यूएशन शेडर को प्रत्येक नवनिर्मित वर्टेक्स के लिए कहा जाता है। इस shader में, आप उस प्रकार के आदिम सेट करते हैं, जिसे आप जेनरेट करना चाहते हैं और कैसे वर्टिकल और अन्य कई चीजें हैं। इस shader का उपयोग प्रत्येक प्रकार के pertex शीर्ष गणनाओं को करने के लिए किया जा सकता है, जैसे कि एक शीर्ष shader। यह प्रत्येक उत्पन्न वर्टेक्स के लिए कम से कम एक बार कॉल करने की गारंटी है।

यदि आप आदिम पर कोई और काम करना चाहते हैं, तो आप एक ज्यामिति shader जोड़ सकते हैं।


1
@ नाइकोल धन्यवाद। मैंने उसी के अनुसार उत्तर संपादित किया।
ड्रैगनसेल

7

यह पाइपलाइन में 3 चरणों को सक्रिय करता है।

पहला टेसलेशन कंट्रोल शेडर (डी 3 डी में पतवार) है, जो एक कोने में सेट पर दिखता है और फिर आउटपुट करता है कि इसे अलग त्रिकोण में कैसे विभाजित किया जाना चाहिए।

दूसरा एक निश्चित फ़ंक्शन चरण है जो अनुरोधित त्रिकोण उत्पन्न करेगा।

तीसरे चरण में टसेसेलेशन एवलाटेशन शेडर (डी 3 डी में डोमेन शेडर) जो कि उत्पन्न वर्टेक्स के अनुसार चलाया जाता है और इसे उत्पन्न वर्टेक्स के बेरेंट्रिक निर्देशांक के आधार पर सही जगह पर रखेगा।

यह विस्तार के स्तर के लिए उपयोग किया जाता है ताकि जाल कैमरे के करीब हो और अधिक त्रिकोण उत्पन्न कर सकें।

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