-1
我有與alpha通道紋理問題。我正在渲染一片帶葉子的棕櫚樹: OpenGL透明紋理問題
但是正如你所看到的,天空在圖片左側的葉子上。
在我的代碼中,天空呈現,然後我渲染樹木。 這裏是我的代碼,這使得一個棕櫚樹:
RenderFrame(0);//trunk
//glColor3f(0.0, 0.6, 0.0);
glEnable(GL_BLEND);
glDisable(GL_CULL_FACE);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
leaves.RenderFrame(0);
glEnable(GL_CULL_FACE);
glDisable(GL_BLEND);
您是否啓用了深度測試?如果是的話,葉子可能只是在天空後面,並通過深度測試消除。 –
它更糟。我看到其他物體後面的葉子。我認爲它必須進行排序(從最遠到最近的相機)... – Barcio77