मुझे एक बफर खींचना है जिसमें दो हजार शिखर हैं। मैं डेटा स्टोर करने के लिए एक vbo का उपयोग कर रहा हूँ।ओपनजीएल वीबीओ डेटा अपडेट करने
मुझे पता है कि मुझे कई बार वीबीओ अपडेट करना होगा - लेकिन केवल एक समय में छोटे भागों में।
तो मैं सोच रहा हूँ क्या ऐसा करने के लिए सबसे अच्छा तरीका है:
- स्प्लिट VBO ऊपर छोटे VBOs में (जो कि 300 verts तरह पकड़) और फिर 1 कॉल के साथ व्यक्तिगत VBOs अद्यतन?
- एक बड़ा वीबीओ और
glBufferSubData()
कॉल का उपयोग करें? glMapBuffer()
और एक बड़ा वीबीओ का उपयोग करें?
साइड नोट: मुझे पहले से ही पता है कि मुझे इसे कई कॉलों में आकर्षित करना है - चाहे मैं कई वीबीओ का उपयोग करता हूं या नहीं। मुझे यह भी पता है कि मैं केवल एक समय में शिखर का हिस्सा खींचागा। क्या बाध्य वीबीओ बफर बदलने के लिए बहुत सारे ओवरहेड हैं? इसके अलावा, नक्शा बफर बफरडाटा से धीमा है? – Pubby
मैपबफर का लाभ यह है कि आप अपने डेटा को बफर के अंदर कॉपी कर सकते हैं जबकि जीएल कुछ और कर रहा है। दूसरी तरफ, बफर मैपिंग का असली पर्फ वास्तव में कार्यान्वयन पर निर्भर है। यदि आप अपने वीबीओ को कई बार बदलने से बच सकते हैं, तो मैं आपको ऐसा करने की सलाह दूंगा। – tibur