glAlphaFunc 函数

glAlphaFunc 函数使应用程序能够设置 alpha 测试函数。

语法

void WINAPI glAlphaFunc(
   GLenum   func,
   GLclampf ref
);

参数

func

alpha 比较函数。 以下是接受的符号常量及其含义。

含义
GL_NEVER
永不通过。
GL_LESS
如果传入的 alpha 值小于引用值,则传递。
GL_EQUAL
如果传入的 alpha 值等于引用值,则传递。
GL_LEQUAL
如果传入的 alpha 值小于或等于引用值,则传递。
GL_GREATER
如果传入的 alpha 值大于引用值,则传递。
GL_NOTEQUAL
如果传入的 alpha 值不等于引用值,则传递。
GL_GEQUAL
如果传入的 alpha 值大于或等于引用值,则传递。
GL_ALWAYS
始终通过。 这是默认值。

ref

将传入的 alpha 值进行比较的引用值。 此值被固定到范围 0 到 1,其中 0 表示可能的最低 alpha 值,1 表示可能的最高值。 默认引用为 0。

返回值

此函数不返回值。

错误代码

glGetError 函数可以检索以下错误代码。

名称 含义
GL_INVALID_ENUM
func 不是接受的值。
GL_INVALID_OPERATION
在对 glBegin 的调用和对 glEnd 的相应调用之间调用了函数。

备注

alpha 测试将丢弃片段,具体取决于传入片段的 alpha 值与常量引用值之间的比较结果。 glAlphaFunc 函数指定引用和比较函数。 仅当启用了 alpha 测试时,才会执行比较。 (有关GL_ALPHA_TEST的详细信息,请参阅 glEnable.)

funcref 参数指定绘制像素的条件。 使用 func 指定的函数将传入的 alpha 值与 ref 进行比较。 如果比较通过,则根据后续模具和深度缓冲区测试来绘制传入片段。 如果比较失败,则不会在该像素位置对帧缓冲区进行更改。

glAlphaFunc 函数对所有像素写入进行操作,包括由点、线、多边形和位图的扫描转换以及像素绘制和复制操作产生的写入。 glAlphaFunc 函数不会影响屏幕清除操作。

Alpha 测试仅在 RGBA 模式下完成。

以下函数检索与 glAlphaFunc 函数相关的信息:

带参数GL_ALPHA_TEST_FUNC的 glGet

带参数GL_ALPHA_TEST_REF的 glGet

glIsEnabled with argument GL_ALPHA_TEST

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl.h

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glBegin

glBlendFunc

glClear

glDepthFunc

glEnable

glEnd

glGet

glIsEnabled

glStencilFunc