您的位置:首页 > 其它

绘制透明物体不需要禁用深度测试

2011-07-12 15:51 232 查看
只需要将深度缓冲设为只读。

在实际应用中用禁用深度缓冲的方式绘制透明物体,简直一定是会出错的。

glEnable(GL_BLEND);

glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

glDepthMask(GL_FALSE); // 将深度缓存设为只读

// 画要透明的图形

glDisable(GL_BLEND);

glDepthMask(GL_TRUE); // 恢复深度缓存可写
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: