【问题标题】:Retrieving FBO data in GLSL在 GLSL 中检索 FBO 数据
【发布时间】:2010-06-06 16:26:55
【问题描述】:

我正在尝试让 MRT 在 OpenGL 中工作以尝试延迟渲染。这是我理解的情况。

  1. 创建 3 个渲染缓冲区(例如)。两个 RGBA8 和一个 Depth32。
  2. 创建一个 FBO。
  3. 将渲染缓冲区附加到 FBO。 ColorAttachment0/1 用于颜色缓冲区,DepthAttachment 用于深度缓冲区。
  4. 绑定 FBO。
  5. 绘制几何图形。
  6. 在片段着色器中使用gl_FragData[] 将数据发送到不同的附件。

此时我想使用 GLSL 在另一遍中获取数据,如何 a) 从帧缓冲区颜色附件中检索数据,b) 从深度组件中获取数据。

【问题讨论】:

    标签: opengl glsl fbo


    【解决方案1】:

    您使用什么作为 FBO 附件?渲染缓冲区?纹理?

    您应该使用纹理作为颜色附件(和深度附件),这样您就可以在下一轮中阅读它们。没有办法对渲染缓冲区做同样的事情。

    【讨论】:

    • 我使用的是渲染缓冲区(参见问题中的#3),因为我永远不会使用生成的图像作为几何体上的纹理贴图。我想我最好使用纹理作为附件,并在第二遍中将它们映射到屏幕对齐的四边形上?
    • 是的,确切地说,纹理是要走的路。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-18
    • 2018-03-19
    • 1970-01-01
    • 1970-01-01
    • 2014-07-07
    • 2015-06-12
    • 2017-09-25
    相关资源
    最近更新 更多