नेट के चारों ओर मैंने देखा कुछ उदाहरणों से, gl_FragData [0] को रंग बफर माना जाता है। मैं gl_FragData में प्रत्येक सूचकांक के अर्थ खोजने की कोशिश की और ओपन छायांकन भाषा पुस्तक (नारंगी पुस्तक)क्या gl_FragData [0] हमेशा एक रंग बफर है?
gl_FragData एक सरणी जो एक या अधिक बफ़र्स गुप्त में मानों लिखा जाता है सौंपा जा सकता है है के इस परिच्छेद में आए । इस सरणी का आकार कार्यान्वयन निर्भर है और प्रतीकात्मक निरंतर GL_MAX_DRAW_BUFFERS के साथ glGet के साथ पूछताछ की जा सकती है। के भीतर gl_FragData में लेखन मानों के परिणामस्वरूप संशोधित ऑफस्क्रीन बफर glDrawBuffers के साथ निर्दिष्ट हैं। Gl_FragData [0] में लिखा गया मान में निर्दिष्ट सूची में पहले बफर को glDrawBuffers पर कॉल करता है, gl_FragData [1] में लिखा गया मान सूची में दूसरा बफर अपडेट करता है, और इसी तरह।
यह निर्दिष्ट नहीं है कि gl_FragData का 0 वां मान हमेशा रंग बफर होता है। अगर ऐसा विनिर्देश है, तो मुझे यह कहां मिल सकता है? यदि नहीं, gl_FragData को लिखते समय सामान्य अभ्यास क्या है?
मैं glDrawBuffers लगता OpenGL ES में उपलब्ध नहीं है। उस मामले में एफबीओ निश्चित रूप से इसे किसी बिंदु पर बुलाता है? – Jayesh
'glDrawBuffers'' 'glDrawBuffer' के साथ भ्रमित न हों, नामों की बहुत बुद्धिमान पसंद ...) ARB_draw_buffers का हिस्सा है, जो ओपनजीएल 2.0 कोर है। चूंकि OpenGL ES 2.0 को OpenGL 2.0 के सापेक्ष परिभाषित किया गया है, इसमें उस फ़ंक्शन को शामिल करना चाहिए। – Damon
@ डैमन: तकनीकी रूप से, ['glDrawBuffer'] (http://www.opengl.org/wiki/GLAPI/glDrawBuffer) को 'glDrawBuffers' के संदर्भ में परिभाषित किया गया है; यह सिर्फ एक अधिक प्रतिबंधक रूप है (देने वाले बफर और अन्य सभी को 'GL_NONE' को इंडेक्स 0 सेट करता है)। लेकिन न तो जीएल ईएस 2.0 में है। –