opengl gl_enable

来源:互联网 发布:linux 启动进度条 编辑:程序博客网 时间:2024/06/05 00:38

在InitGL() 或者类似的初始化OpenGL的地方,会有glEnable(GL_DEPTH_TEST);


启用了之后,OpenGL在绘制的时候就会检查,当前像素前面是否有别的像素,如果别的像素挡道了它,那它就不会绘制,也就是说,OpenGL就只绘制最前面的一层。


当我们需要绘制透明图片时,就需要关闭它

glDisable(GL_DEPTH_TEST);

并且打开混合

glEnable(GL_BLEND);


而且还需要设置使用的透明度

glColor4f(1.0f,1.0f,1.0f,0.5f); 

这样就是一半的显示了,设置为1就是不透明


glBlendFunc(GL_SRC_ALPHA,GL_ONE);

基于源像素Alpha通道值的半透明混合函数

原创粉丝点击