OpenGL的一个函式,用于指定深度缓冲比较值。
基本介绍
- 中文名:glDepthFunc
- 外文名:glDepthFunc
- 功能:指定用于深度缓冲比较值
- 参数说明:func指定深度缓冲比较函式
名称
glDepthFunc
参数
func:指定深度缓冲比较函式
参数取值範围
GL_NEVER,GL_LESS,GL_EQUAL,GL_LEQUAL,GL_GREATER,GL_NOTEQUAL,GL_GEQUAL,GL_ALWAYS,预设值GL_LESS。
GL_NEVER,不通过(输入的深度值不取代参考值)
GL_LESS,如果输入的深度值小于参考值,则通过
GL_EQUAL,如果输入的深度值等于参考值,则通过
GL_LEQUAL,如果输入的深度值小于或等于参考值,则通过
GL_GREATER,如果输入的深度值大于参考值,则通过
GL_NOTEQUAL,如果输入的深度值不等于参考值,则通过
GL_GEQUAL,如果输入的深度值大于或等于参考值,则通过
GL_ALWAYS,总是通过(输入的深度值取代参考值)
错误码
GL_INVALID_ENUM:参数值不合法。
GL_INVALID_OPERATION:在glBegin和glEnd之间调用。
英文解释
NAME
glDepthFunc - specify the value used for depth buffer comparisons
C SPECIFICATION
void glDepthFunc( GLenum func )
PARAMETERS
func : Specifies the depth comparison function. Symbolic constants GL_NEVER, GL_LESS, GL_EQUAL, GL_LEQUAL, GL_GREATER, GL_NOTEQUAL, GL_GEQUAL, and GL_ALWAYS are accepted. The default value is GL_LESS.
DESCRIPTION
glDepthFunc specifies the function used to compare each incoming pixel z value with the z value present in the depth buffer. The comparison is performed only if depth testing is enabled. (See "glEnable" and glDisable of GL_DEPTH_TEST.)
func specifies the conditions under which the pixel will be drawn. The comparison functions are as follows:
GL_NEVER : Never passes.
GL_LESS : Passes if the incoming z value is less than the stored z value.
GL_EQUAL : Passes if the incoming z value is equal to the stored z value.
GL_LEQUAL : Passes if the incoming z value is less than or equal to the stored z value.
GL_GREATER :
Passes if the incoming z value is greater than the stored z value.
GL_NOTEQUAL :
Passes if the incoming z value is not equal to the stored z value.
GL_GEQUAL : Passes if the incoming z value is greater than or equal to the stored z value.
GL_ALWAYS : Always passes.
The default value of func is GL_LESS. Initially, depth testing is disabled.
ERRORS
GL_INVALID_ENUM is generated if func is not an accepted value.
GL_INVALID_OPERATION is generated if glDepthFunc is called between a call to glBegin and the corresponding call to glEnd.
ASSOCIATED GETS
glGet with argument GL_DEPTH_FUNC
glIsEnabled with argument GL_DEPTH_TEST
SEE ALSO
"glDepthRange" , "glEnable"