對於屏幕外呈現到紋理,我在附接安裝GL_COLOR_ATTACHMENT0通過可以將GL_FLOAT紋理作爲COLOR附件分配給FBO嗎?
glTexImage2D限定的紋理(GL_TEXTURE_2D,0,GL_RGBA,寬度,高度,0,GL_RGBA,GL_FLOAT,NULL);
然後我使用輸出vec4的片段着色器呈現給FBO,所以通常情況下應該沒問題。要檢查我正確顯示紋理,我使用函數
glTexSubImage2D()
在紋理的中間添加一些灰色像素。紋理正確顯示(我可以在正確的位置完美地看到這些像素),但紋理的其餘部分只是嘈雜的僞像(當它不是黑色的時候)。
這是否來自我使用GL_FLOAT作爲GL_RGBA紋理的事實?如果是的話,我怎麼能在GLSL中將uvec4轉換成vec4?我的主着色器的輸出是vec4,我不知道如何將usampler2D紋理的uvec4輸出轉換爲我的最終vec4。
感謝您可能提供:)
編輯任何回答:我找到了解決辦法:我沒有透明之間我的2呈現GL_COLOR_BUFFER_BIT。
哦,那時我弄錯了。非常感謝你的回答,這可能解釋爲什麼我的陰影映射不起作用:) – Tuxer