मैं glBufferData
पर एक बफर बनाने या संशोधित करके अपना दृश्य प्रस्तुत कर रहा हूं। वेरटेक्स ऐरे ऑब्जेक्ट्स की मेरी समझ यह है कि वे मुझे उपयोग कर रहे सभी वीबीओ के मैन्युअल बाध्यकारी को छोड़ने की अनुमति देते हैं। क्या यह अभी भी मामला है जब मैं अपना बफर हर समय अद्यतन करता हूं?अगर मुझे वीबीओ बदलने की ज़रूरत है तो क्या मुझे अपने वीएओ का पुनर्निर्माण करने की ज़रूरत है?
क्या मैं अपने वीएओ को बांध सकता हूं, glBufferData
को कॉल और इंडेक्स अपडेट करने के लिए कॉल कर सकता हूं (इस समय मेरे पास केवल दो वीबीओ हैं), और फिर प्रस्तुत करें?
क्या मैं वीबीओ के साथ मेमोरी मैपिंग का उपयोग कर सकता हूं? तो मैं वीएओ बांध सकता हूं, बफर संशोधित कर सकता हूं, फिर प्रस्तुत कर सकता हूं?
वीएओ वास्तव में क्या करता है? क्या यह कार्य केवल एक शॉर्टकट का है जो मेरे वीबीओ के वर्टेक्स विशेषताओं के बाध्यकारी को स्टोर और स्वचालित करता है? क्या यह डेटा या बाइंडिंग का स्वामित्व लेता है?
तो वीएओ प्रभावित नहीं करता है कि वीबीओ मैंने किस बाध्य किया है? मुझे उनसे बांधना होगा और उन पर 'glbufferData' को कॉल करना होगा। –
@ रॉबर्ट रूहानी यह मानते हुए कि आपका वर्टेक्स लेआउट अधिकांश ड्रॉ के लिए समान है, मुझे यह बहुत हास्यास्पद लगता है कि आपको प्रत्येक वीबीओ के लिए वर्टेक्स विशेषताओं का एक अलग सेट स्टोर करना होगा। मैंने इससे बचने की कोशिश करने के लिए थोड़ी देर की तलाश की लेकिन कहीं भी नहीं मिला। – Zebrafish
@TitoneMaurice स्थान की मात्रा न्यूनतम (बाइट्स के क्रम में) होनी चाहिए, अतिरिक्त विशेषताओं को बांधने के लिए अतिरिक्त जीएल कॉल आपकी बाधा नहीं होनी चाहिए। सबसे नजदीकी चीज जो आप चाहते हैं वह इंस्टॉलेशन कर रही है, मेरी राय में कुछ भी अनावश्यक/समयपूर्व अनुकूलन होगा। –