模板测试(Stencil Test)

模板测试在OpenGL中用于实现特殊区域的渲染控制,常用于创建如物体轮廓等效果。基本步骤包括启用模板测试、写入模板缓冲、设置模板函数进行比较。通过示例解释了如何使用模板测试检测并渲染纹理重合区域,最终达到突出重合部分的效果。
摘要由CSDN通过智能技术生成

    模板测试可以用来针对特殊的区域进行渲染控制,实现有趣的效果,例如绘制物体轮廓。在

使用模板测试的时候,一般的步骤如下:

  1. 启用模板测试,以便写入数值到模板缓冲中
  2. 渲染物体,根据渲染的物体将特定的数值写入到模板缓冲中
  3. 禁用模板缓冲写入
  4. 设置模板函数,根据于模板缓冲中的 数值比较结果,渲染特定区域

模板函数有两个:

glStencilFunc(GLenum func, GLint ref, GLuint mask)

glStencilOp(GLenum sfail, GLenum dpfail, GLenum dppass)

glStencilFunc(GLenum func, GLint ref, GLuint mask)

参数 取值 描述
func

GL_NEVER

GL_LESS

GL_LEQUAL

GL_GREATER

GL_GEQUAL

GL_EQUAL

GL_NOTEQUAL

GL_ALWAYS

rec Reference Value, 用来与模板缓冲比较
mask 掩码,与参考值和储存的模板值在测试比较它们之前进行与(AND)运算。

glSten

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

后知后觉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值