最近初學OpenGl ES,做一個3D的圖形,遇到了一個棘手的問題,由于紋理包含 透明區域,所以使用了glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); 的混合模式, 以使透明區域顯示出來。因為要實作視角的移動,發現會出現覆寫順序錯誤,而且不能通過改變繪圖順序解決(因為視角會轉的),自然想到開啟 深度測驗 glEnable(GL_DEPTH_TEST);覆寫順序總算對了,好吧棘手的問題出現了: 當包含透明區域的紋理在最前面且被最先繪制時,會導致透明區域后面的物體不被繪制,看上去就是空白一片。
望高手指點,小弟不勝感激。
uj5u.com熱心網友回復:
不透明的先繪制,開啟深度測驗,透明的后繪制,不開啟深度測驗轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/72650.html
標籤:其它游戲引擎
下一篇:游戲音效短時間內重復播放問題
