如果這個問題看起來很混亂,我很抱歉。我所看到的行爲對我來說毫無意義。OpenGL/OpenGL ES中的幀緩衝區,紋理和glColor行爲
我有一個Framebuffer渲染到紋理。我渲染紅色,綠色,藍色不同的不透明度的實心矩形到這個紋理。然後我將紋理渲染到屏幕(Framebuffer 0)。附加到紋理的Framebuffer是持久的,並且在每個渲染循環中,我會爲紋理繪製更多的矩形 - 最終填充屏幕。
我發現如果我在將紋理渲染到屏幕之前沒有將glColor()
設置爲白色100%不透明度,則不會呈現特定顏色的矩形。那就是如果在渲染紋理之前設置了glColor(1.f, 0.f, 0.f, 1.f)
,則只繪製藍色矩形。
我不明白爲什麼當前顏色會影響紋理的渲染(我認爲它就像一個blit)。我曾試過各種texParameter(...)
的電話無濟於事,但我只是猜測。
謝謝。
我覺得函數glColor()在OpenGL ES中不可用 – 2010-07-17 09:42:16