2011-06-08 17 views
7

ओपनजीएल सुपरबबल बनावट बफर ऑब्जेक्ट्स पर चर्चा करता है, जो वीबीओ के अंदर डेटा से बने बनावट हैं। ऐसा लगता है कि उनका उपयोग करने के फायदे हैं, लेकिन मुझे मिले सभी उदाहरण नियमित बनावट बनाते हैं। क्या किसी के पास किसी दूसरे का उपयोग करने के बारे में कोई सलाह है?बनावट बफर वस्तुओं या नियमित बनावट?

+0

ईसाई ने जो कहा, उसे पूरा करने के लिए: टीबीओ उन्नत उपयोग के लिए हैं। जिसे आप आमतौर पर "बनावट" कहते हैं (यानी एक छवि), glGenTextures और सह का उपयोग करें। – Calvin1602

उत्तर

8

extension registry के अनुसार, बनावट बफर केवल 1-आयामी हैं, कोई फ़िल्टरिंग नहीं कर सकते हैं और सामान्यीकृत [0,1] फ्लोटिंग पॉइंट बनावट निर्देशांक के बजाय स्पष्ट टेक्स्ट (इंडेक्स द्वारा) तक पहुंचकर एक्सेस किया जाना चाहिए। इसलिए वे नियमित रूप से नियमित बनावट के लिए प्रतिस्थापन नहीं हैं, लेकिन बड़े वर्दी सरणी के लिए (उदाहरण के लिए स्किनिंग मैट्रिस या प्रति उदाहरण डेटा)। here जैसे नियमित बनावट की तुलना में उन्हें समान बफर में तुलना करने के लिए और अधिक समझदारी होगी।

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

संपादित करें: SuperBible में इसी अध्याय की जाँच के बाद, मैंने पाया कि वे एक हाथ उल्लेख पर, कि बनावट बफ़र्स हमेशा 1-आयामी और असतत पूर्णांक Texel ऑफसेट द्वारा पहुँचा रहे हैं, लेकिन दूसरी ओर करने के लिए असफल स्पष्ट रूप से फ़िल्टरिंग की कमी का जिक्र करें। ऐसा लगता है कि वे उन्हें कम या ज्यादा विज्ञापन बनाते हैं क्योंकि बनावट सिर्फ बफर से अपने डेटा को सोर्स कर रही है, जो ओपी के सवाल बताती है। लेकिन ऊपर वर्णित यह सिर्फ गलत तुलना है। बनावट बफर केवल सादे सरणी (हालांकि समायोज्य तत्व प्रकार के साथ) के रूप में शेडरों में बफर डेटा तक पहुंचने का एक तरीका प्रदान करते हैं, और अधिक नहीं (नियमित रूप से बनावट के लिए उन्हें बेकार बनाते हैं) लेकिन कम नहीं (वे अभी भी एक शानदार विशेषता है)।

+0

यह पूरी तरह से गलत है। वह एक्सटेंशन 1 डी, 2 डी और 3 डी बनावट का समर्थन करता है –

+0

@VJo नहीं, आपकी टिप्पणी गलत है। अधिक अंतर्दृष्टि के लिए लिंक किए गए एक्सटेंशन विनिर्देश पढ़ें। शायद आप पीबीओ के साथ बनावट बफर गड़बड़ कर रहे हैं। –

+0

@VJo: 'बफर बनावट texels के एक-आयामी सरणी हैं' और 'बफर बनावट mipmapping का समर्थन नहीं करते हैं, सामान्यीकृत फ़्लोटिंग-पॉइंट बनावट निर्देशांक के साथ बनावट लुकअप, और किसी भी प्रकार की बनावट फ़िल्टरिंग'। और बीटीडब्ल्यू, यह ओपनजीएल 3.1+ का हिस्सा है: http://www.opengl.org/sdk/docs/man3/xhtml/glTexBuffer.xml – Calvin1602

0

वीबीओ समर्थित नहीं होने पर नियमित बनावट का उपयोग किया जाता है।

+0

यह गलत है क्योंकि बनावट बफर नियमित बनावट की सामान्य विशेषताएं प्रदान नहीं करते हैं। –

+1

यह नहीं कह सकता कि उत्तर गलत है, क्योंकि नियमित रूप से टेक्सबो के व्यवहार को अनुकरण करने के लिए नियमित बनावट का उपयोग किया जा सकता है जब सुविधा (एक्सटेंशन) हार्डवेयर द्वारा समर्थित नहीं है। – rotoglup

+0

@rotoglup ठीक है, अगर उस बिंदु से देखा गया है, तो आप शायद सही हैं। –

संबंधित मुद्दे