2011-03-31 13 views
5

मैं एक ऑफस्क्रीन बनावट (जिसे ऑफस्क्रीन फ्रेमबफर द्वारा बनाया गया है) खींचकर सफलतापूर्वक अपना ओपनजीएल दृश्य प्रस्तुत कर रहा हूं।2 ओपनजीएल संदर्भ के बीच बनावट को कैसे साझा करें?

draw -> offscreen FBO/Texture ------> onscreen FBO ---> render buffer -> context 

अब मैं एक और ओपनजीएल संदर्भ प्रस्तुत करने के लिए ऑफस्क्रीन बनावट का पुन: उपयोग करना चाहता हूं।

draw -> offscreen FBO/Texture ----> onscreen FBO ---> render buffer -> context 
          \----> onscreen FBO2---> render buffer2 ->context 2 

मैंने कोशिश की लेकिन संदर्भ 2. किसी को भी इस समस्या को मिला है के लिए कुछ भी प्रदान नहीं कर सकते हैं और जानते हैं कि बनावट साझा करने के लिए कॉन्फ़िगर करने के लिए कैसे?

धन्यवाद!

अद्यतन: मैंने अभी एक सरल प्रोजेक्ट बनाया है जो मैं फ्रेमबफर और डबल संदर्भों के साथ कर रहा हूं। http://www.mediafire.com/?vxv1bubzvio4q7h

+0

किसी के पास कोई नमूना कोड है जो शेयर समूह के साथ काम करता है? – KONG

उत्तर

2
+0

मैंने संदर्भ 2 बनाने की कोशिश की जो संदर्भ 1 के समान शेयर समूह में है, फिर संदर्भ 1 में बनाए गए बनावट पहचान के साथ संदर्भ 2 प्रस्तुत करें। लेकिन जब संदर्भ 1 अभी भी सामान्य रूप से आकर्षित करता है, तो मेरे पास संदर्भ 2 में कोई परिणाम नहीं है। दोनों संदर्भ मुख्य धागे में हैं, मैं बनावट को प्रस्तुत करने से पहले बनावट बांधता हूं, प्रत्येक संदर्भ में इसे प्रस्तुत करने के बाद glFlush को कॉल करता हूं। – KONG

+0

क्या आप [EAGLContext setCurrentContext: संदर्भ] को कॉल करना सुनिश्चित कर रहे हैं; प्रत्येक संदर्भ में प्रस्तुत करने से पहले। –

+0

मुझे इसके बारे में निश्चित है। मैं जो करता हूं वह सेब से वर्तमान EAGLView नमूना उपclass है, और बनावट फ्रेम कोड को कॉल करने से पहले सेट फ्रेम फ्रेम (जिसमें setContext शामिल है) कॉल करें। क्या यह सुनिश्चित करने के लिए कोई डीबग तरीका है कि मैं संदर्भ 2 में texture1 तक पहुंच सकता हूं? – KONG

1

मुझे लगता है कि आप बनावट साझा करने के लिए कोशिश कर रहे हैं और मैं नहीं कर रहा हूँ, लेकिन मैं इस जवाब की पेशकश के रूप में अपने लक्षण मेरा रूप में एक ही हो रहा है। ..

मेरे मामले में, मुझे बनावट को बाध्य करते समय एक GL_INVALID_VALUE भी मिल रहा था। यह पता चला कि मैं इसके लिए बनावट बनाने से पहले दूसरे संदर्भ में स्विच नहीं कर रहा था। इस प्रकार वे पहले संदर्भ में बनाए जा रहे थे। मेरा प्रस्तुतिकरण, हालांकि WAS संदर्भों को स्विच कर रहा है और इसलिए बनावट खोजने में विफल रहा है।

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