alpha是除RGB外的第四个颜色分量,代表不透明度。

OpenGL根据要绘制像素的alpha值和屏幕已有像素alpha值来混合要绘制像素颜色与已有像素颜色,得到目标颜色,这就是alpha混合。混合计算方式有多种。

作者在示例代码中,在绘制半透物体时不写深度缓冲,这样才能使被半透物体挡住的物体不会因为深度检测而被过滤掉。

要想在场景中进行正确的alpha混合,上述的方法一般只在要求简单的情况下使用,比较通用的做法是:首先对场景中物体分组,不透明的物体先渲染,半透的物体后渲染;渲染半透物体时,根据物体深度值排序,先渲染远处的,后渲染近处的。

glBlendFunc设置alpha混合计算公式,

glEnable(GL_BLEND)打开alpha混合功能

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-07
  • 2022-01-10
  • 2021-10-24
  • 2021-06-10
猜你喜欢
  • 2021-08-09
  • 2021-08-15
  • 2022-12-23
  • 2021-12-21
  • 2021-07-28
  • 2022-12-23
相关资源
相似解决方案