glBlendFunc();的使用方法

来源:百度知道 编辑:UC知道 时间:2024/06/22 07:13:46
glBlendFunc();的使用方法
以及要用到的各种参数,和参数的意义.
哪位大虾有这些资料的请告诉我.
我英语水平很烂,看不懂.
有没有详细的说明?

  1. glBlendFunc 定义像素算法。

  2. 在 RGB 模式下可以使用混合使用帧缓冲区 (目标值) 中已有的 RGBA 值传入的 (源) RGBA 值的函数绘制像素为单位)。 默认情况下,混合处于禁用状态。 启用和禁用混合使用 glEnable glDisable GL_BLEND 参数。

  3. 当启用,glBlendFunc 定义混合的操作。 sfactor 参数指定的九个方法,用于扩展源颜色分量。 dfactor 参数指定的八个方法,用于扩展目标颜色分量。 十一个可能的方法是在下表中所述。 每个方法定义四个规模因素 — — 为红色、 绿色、 蓝色和阿尔法各一个。

  4. 在表中和随后方程中,在源和目标颜色组件被称为 (R s ,G s 、 B s , s ) 和 (R d ,G d 、 B d , d )。 他们被理解为是具有零之间的整数值和 (k R 、 k G 、 k R 、 k A ),其中

kR = 2 m R-1

kG = 2 m G-1

kB = 2 m B-1

kA = 2 m A-1

和 (m R 、 m G 、 m B 、 m A ) 是红色绿色、 蓝白 alpha bitplanes 数。

看MSDN:
http://msdn.microsoft.com/en-us/library/ms537046(VS.85).aspx

大概就是这样:第一个参数指出源图元的alpha的取值计算方法,第二个参数指出目标处的alpha的计算方法。

------
我个人理解:
两个参数的取值都可以是如下常量之一:
GL_ZERO, GL_ONE, GL_DST_COLOR, GL_ONE_MINUS_DST_COLOR, GL_SRC_ALPHA, GL_ONE_MIN