0
我在iOS上遇到了使用OpenGL ES 2.0的半透明問題。我的場景很簡單。它由一個立方體網格組成,其中一些應該顯示爲固體,而另一些應該呈現半透明。我開始使用下面的代碼來設置OpenGL。OpenGL ES 2.0中的半透明
glEnable(GL_CULL_FACE);
glEnable(GL_DEPTH_TEST);
glDepthFunc(GL_LEQUAL);
glEnable (GL_BLEND);
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
由於深度測試和剔除,這會導致某些角度的透明度不正確。見下面
我試圖禁用冰壺和深度測試和啓用阿爾法測試的兩個圖像。結果是正確的透明度,但沒有紋理(見下圖)。
//glEnable(GL_CULL_FACE);
//glEnable(GL_DEPTH_TEST);
//glDepthFunc(GL_LEQUAL);
glAlphaFunc(GL_GREATER, 0.5);
glEnable(GL_ALPHA_TEST);
glEnable (GL_BLEND);
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
我使用GLKit加載紋理和GLKBaseEffect渲染場景。是否有人提示如何在第一張圖片中獲得與所有透視圖相同的正確透明度?謝謝:)
謝謝你的提示。解決方案很簡單,首先繪製堅實的立方體做了訣竅。 – Christoph