绘制透明物体不需要禁用深度测试
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); // 恢复深度缓存可写
在实际应用中用禁用深度缓冲的方式绘制透明物体,简直一定是会出错的。
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glDepthMask(GL_FALSE); // 将深度缓存设为只读
// 画要透明的图形
glDisable(GL_BLEND);
glDepthMask(GL_TRUE); // 恢复深度缓存可写
相关文章推荐
- OpenGL禁用深度测试 解决正投影贴图模式下集显电脑不能显示文字问题。
- Android OpenGL ES 2.0 开启了深度测试但是在一定距离还是呈现透明状态
- UnityShader中级篇——透明物体的阴影(透明度测试)
- 【QT】使用QPainter类drawImage函数绘制透明图片的问题
- ubuntu14使用python绘制caffe的深度学习网络结构
- openGL 深度测试
- 带你测试对比深度学习框架!TensorFlow,Keras,PyTorch...哪家强?(附数据集)
- MFC 绘制透明位图的方法
- WINCE实现图片加载绘制类,支持ALPHA运算绘制PNG透明图片
- 深度学习与人脸识别系列(4)__vgg人脸识别模型测试
- 绘制不规则位图方法总结,多种实现方法,全面测试比较
- Opencv学习之寻找和绘制物体的凸包
- C#绘制半透明窗体,只让窗体背景半透明,而窗体里面的控件不透明
- 什么是OpenGL中的深度、深度缓存、深度测试?
- 浏览器禁用退格键和回车,文本区域支持回车换行 IE6,Firefox2.X,Firefox3.x版本下测试通过
- OpenGL深度测试
- Java反射深度测试
- BitmapData.draw 绘制透明区域
- 深度学习物体检测——常用资源简述
- 你不需要测试人员吗?