首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用OpenSceneGraph的SSAO、优化和管道

使用OpenSceneGraph的SSAO、优化和管道
EN

Stack Overflow用户
提问于 2014-06-18 18:38:29
回答 1查看 521关注 0票数 1

关于SSAO技术的实现,我有一些疑问:

  1. 它真的需要第二个(或更多)具有每个几何学的管道吗?我的意思是,我找到了一些关于它的教程和东西,但大多数情况下,它们只是给了你做它的指导,而没有输入更多的细节。
  2. 有没有优化的可能?我正在使用OSG,我的印象是,如果您发送的纹理为CPU,并再次抛到GPU不是最好的解决方案。
  3. 是否有可能使着色器产生一个纹理与样本深度在一个缓冲区,并将它发送到第二管道线仅使用四角为屏幕,颜色,场景的深度和深度的测试?我正在使用osg,无法在文档中找到正确的方法。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-18 19:12:38

一般来说,SSAO最适合作为延迟阴影方法的一部分来实现。严格的前向阴影方法是可能的,但仍然需要两次呈现传递,而SSAO可以很容易地添加到延迟阴影引擎的第二次呈现传递。在SSAO中,您需要场景的完整深度缓冲区才能计算遮挡,所以对问题第1节的简短回答是:是的,SSAO需要两次渲染通过。

请注意,在延迟阴影中,虽然有两个呈现传递,但复杂的几何图形(即您的模型)仅在第一次传递时呈现,而第二次传递通常由每种类型的光呈现的简单多边形形状组成。这几乎就是你在问题的第3部分中所建议的。

关于问题的第2部分,当正确设置时,您不应该需要将中间纹理移回CPU,然后在两个呈现传递之间返回到GPU;您只需要将第一个呈现传递的纹理作为第二次呈现传递的资源。

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

https://stackoverflow.com/questions/24292817

复制
相关文章

相似问题

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