首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在glsl中处理深度

问如何在glsl中处理深度
EN

Stack Overflow用户
提问于 2011-10-13 09:11:26
回答 1查看 1K关注 0票数 2

我对openGL中的FBO和深度有问题。我将投影、视图和模型矩阵传递给一个着色器,该着色器写入g缓冲区。当我解除绑定FBO并写入gl_FragColor时,场景显示为应有的样子。但当我写入gl_FragData,然后将附带的纹理写入屏幕对齐的四边形时,对象是根据逆序处理而不是深度绘制的……我可以看透先处理的对象到之后处理的对象。有没有人有同样的问题,他们知道解决方法吗?或者有人可以提供从顶点着色器读取深度值,查询当前深度,然后根据比较写入深度缓冲区的语法,即在片段着色器中手动处理操作。

EN

回答 1

Stack Overflow用户

发布于 2011-10-14 21:22:23

您的主帧缓冲区很可能具有该深度,而手动创建的FBO可能没有该深度。因此,当绘制到屏幕时,您具有深度排序的几何体,而您的FBO无法提供深度排序几何体,并且在内部使用禁用的深度测试,而没有与其关联的存储。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7748363

复制
相关文章

相似问题

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