2
我可以舒適地將場景渲染到紋理,並將紋理映射回幀緩衝以進行屏幕顯示。但是如果我想將紋理映射到自身以便模糊它(例如,在新位置的四分之一不透明度處),該怎麼辦。那可能嗎?在OpenGL ES中渲染紋理
我做它的方式就是啓用質地:
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, color_tex);
,然後繪製它:
glVertexPointer(2, GL_FLOAT, 0, sv);
glTexCoordPointer(2, GL_FLOAT, 0, tcb1);
glColor4f (1.0f,1.0f,1.0f,0.25f);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
(一些代碼省略,很明顯)
是那個想法有什麼明顯的錯誤?我是個白癡嗎?
你想使用FBO將紋理渲染到相同的紋理,但有一些處理? – 2010-07-13 16:23:20
本質上。再次將紋理分層,然後進行不透明度更改。 我想我可能需要將紋理寫入另一個FBO,然後將其複製回來。是對的嗎? – mtrc 2010-07-13 16:28:51
如果您使用的是iOS 6.0或更新的版本,則可以訪問gl_LastFragData變量以讀取新片段着色器通道中先前渲染的狀態。它是basicalyl的「乒乓球」,但不改變2 diff渲染紋理目標。 – MoDJ 2014-05-18 19:29:08