首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >OpenGL模板,从写的值中分离引用?

OpenGL模板,从写的值中分离引用?
EN

Stack Overflow用户
提问于 2015-09-22 07:37:36
回答 1查看 166关注 0票数 2

下面的代码设置模具测试,以查看ref是否大于模具缓冲区中存储的值,如果是,它将向模具缓冲区写入ref

代码语言:javascript
代码运行次数:0
运行
复制
unsigned int ref = 42;
glStencilFunc(GL_GREATER, ref, 0xFF);
glStencilOp(GL_KEEP, GL_KEEP, GL_REPLACE);

问题是,虽然我确实想对ref测试模具缓冲区,但如果它成功了,我不想向它写ref,我想编写一个完全不同的值。我发现的唯一选择是GL_INCR,它可以代替GL_REPLACE,但是如果模具缓冲区中已经写了很多无法事先清除的东西,那就不太有用了。

有没有办法..。比如说,测试42是否大于存储在模板缓冲区中的内容,如果是的话,写100或其他东西到它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-22 13:29:46

我不相信这个功能在标准OpenGL中是可用的。我发现的最接近的扩展是一个特定于供应商的扩展:扩展

这正好支持您要寻找的内容:

此外,此扩展将用作模具操作源的值与引用值分离,允许在模具测试和模具缓冲区更新中使用不同的值。

通过阅读规范,调用应该如下所示,val是您想要设置的模具值:

代码语言:javascript
代码运行次数:0
运行
复制
glStencilFunc(GL_GREATER, ref, 0xFF);
glStencilOpValueAMD(GL_FRONT_AND_BACK, val);
glStencilOp(GL_KEEP, GL_KEEP, GL_REPLACE_VALUE_AMD);
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32711045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档