मैं एक Minecraft प्रकार के दृश्य के बारे में सोच रहा हूं, जहां voxel द्वारा आप उन ब्लॉकों की एक दुनिया का मतलब है जो वास्तव में बहुभुज का उपयोग करके प्रदान किए जाते हैं:
यदि आप एक ज्यामिति shader का उपयोग करते हैं, तो वास्तव में तीन चेहरे (या जो भी) प्रति स्वर में होने से बचना मुश्किल होगा।
यदि आपके पास बहुत सारे आसन्न ब्लॉक हैं जो एक ही बनावट के हैं तो आप VBO दृष्टिकोण में अपनी (पतित) पट्टी में बहुत कम त्रिकोण होने के लिए बनावट के टाइलिंग का उपयोग कर सकते हैं। मेरा मतलब है, अगर घास के स्वरों का एक अच्छा बड़ा फ्लैट 6x6 क्षेत्र है, तो आप 64 के बजाय सिर्फ 2 त्रिकोण में पूरे शीर्ष को आकर्षित कर सकते हैं।
जीएस दृष्टिकोण के साथ आप निकटवर्ती स्वरों द्वारा घिरे हुए चेहरों के तुच्छ आवरण को नहीं कर सकते हैं जो कि वीबीओ दृष्टिकोण के साथ बहुत सीधा है।
मैंने जीएस दृष्टिकोण की कोशिश नहीं की है, लेकिन मैं कह सकता हूं कि आसन्न टाइल्स को दोहराने के संयोजन के साथ वीबीओ दृष्टिकोण बहुत अच्छा काम करता है। मैंने तत्व सूचकांकों के साथ खिलवाड़ करते हुए पाया कि केवल दोहराए जाने की तुलना में यह बहुत धीमा है। यदि आप अपनी दुनिया को छोटे छोटे क्यूब्स में विभाजित करते हैं, तो आप आमतौर पर केवल एक बाइट प्रति घटक प्रति बार उपयोग कर सकते हैं और यहां तक कि बनावट की जानकारी और मानदंड (एक अक्ष-संरेखित क्यूब पर एक चेहरा केवल 3 संभव मानदंड हैं) आदि को एक बाइट बनाने के लिए अगले बाइट में पैक कर सकते हैं। 4 बाइट्स प्रति वर्टेक्स जो अच्छा और तेज है।
मैंने प्रत्येक 6 चेहरों के लिए अलग-अलग वीबीओ का उपयोग किया है - आपको केवल उनमें से अधिकांश 3 पर स्पष्ट रूप से आकर्षित करने की आवश्यकता है। यह अलग-अलग बनावट के साथ अच्छी तरह से फिट बैठता है जो आमतौर पर मिनीक्राफ्ट-शैली के स्वर के शीर्ष-भागों पर उपयोग किया जाता है। क्योंकि प्रत्येक सेट के लिए सामान्य और ऐसा तब समान है।
के साथ एक एटलस में खड़ी टाइल वाले पिक्सैप्स का उपयोग GL_REPEAT
क्षैतिज अक्ष पर और एक ही एटलस में पिक्समैप्स के 90-डिग्रेड रोटेटेड वर्जन होने के कारण मैंने पाया कि मैं एक ही कॉल में एक ही वीबीओ का उपयोग करके जाहिरा तौर पर अलग-अलग ब्लॉकों की भारी मात्रा को आकर्षित कर सकता हूं। 6x6 घास के क्षेत्र के उदाहरण में, मैंने 12 त्रिकोणों में विभाजित किया है, क्योंकि मैं केवल अपने एटलस में एक आयाम पर दोहराता हूं।
मैं ज्यादातर इसे एकीकृत ग्राफिक्स चिप्स और मोबाइल के बहुत कम अंत पर काम करने के लिए प्राप्त कर रहा हूं, जहां जीएस सिर्फ एक चीज है जिसके साथ मैं एक दिन खेल सकता हूं।