से डिफ़ॉल्ट फ्रेम बफर आईडी प्राप्त करना मैं अपने आईओएस ओपनजीएल ईएस 2.0 प्रोजेक्ट में जीएलकिट/जीएलकेवीव का उपयोग अपने ऐप के डिफ़ॉल्ट एफबीओ/जीवन चक्र को प्रबंधित करने के लिए करता हूं।GLKView/GLKit
डिफॉल्ट एफबीओ (फ्रंट बफर) को बांधने के लिए डेस्कटॉप ओपनजीएल में मैं केवल ग्लिंडफ्रेमबफर (GL_FRAMEBUFFER, 0) को कॉल कर सकता हूं लेकिन आईओएस ऐप में यह मामला नहीं है क्योंकि आपको डिफ़ॉल्ट एफबीओ स्वयं बनाना होगा और उसके पास होगा एक अद्वितीय आईडी;
समस्या GLKit/GLKView कोडिंग शैली GLKView के "bindDrawable" समारोह का उपयोग करने के लिए डिफ़ॉल्ट FBO जो मेरे क्रॉस प्लेटफॉर्म के डिजाइन प्रतिपादन प्रणाली बनाने को सक्रिय करने के लिए मुझे शक्ति है एक छोटे बदसूरत (स्टोर करने के लिए GLKView सूचक के रूप में मेरी ग में शून्य * है ++ इंजन क्लास और पुल इसे हर बार डाला जाता है जब मैं डिफ़ॉल्ट एफबीओ बाइंडिंग करना चाहता हूं)
क्या डिफ़ॉल्ट एफबीओ आईडी प्राप्त करने का कोई तरीका है जो GLKit/GLKView बनाते हैं ताकि मैं स्टोर कर सकूं और डिफ़ॉल्ट फ्रेम बफर को बांधने के लिए इसका उपयोग कर सकूं मेरे कोड में?
सबसे खराब मैं डिफ़ॉल्ट रूप से डिफ़ॉल्ट एफबीओ बनाने और जीएलकिट/जीएलकेवीव को भंग करने के लिए वापस लौट सकता हूं लेकिन यह एक अच्छा ढांचा है जिसे मैं इसका उपयोग करना जारी रखना चाहता हूं।
मेरे खराब अंग्रेजी के लिए खेद है और किसी भी उत्तर के लिए अग्रिम धन्यवाद।
GLint defaultFBO;
glGetIntegerv(GL_FRAMEBUFFER_BINDING_OES, &defaultFBO);
यह काम खूबसूरती से, आपके उत्तर के लिए धन्यवाद (क्षमा करें अभी तक वोट नहीं दे सकता)। –
बहुत बढ़िया, खुशी है कि यह आपके लिए काम करता है। –