【问题标题】:Libgdx FrameBuffer Inadequate?Libgdx FrameBuffer 不足?
【发布时间】:2012-07-14 02:21:04
【问题描述】:

简单地说,我想创建一个涟漪效应。如何实现连锁反应不是我的问题。我的问题本质上是技术性的。

我目前有一种波纹效果,我如何实现这一点是通过使用 FrameBuffer,将我需要的所有内容写入其中,然后打开我创建的波纹着色器和中提琴。

然而,这是有问题的,当我只需要一部分时,我正在捕获整个屏幕。我查看了 API,似乎没有简单的方法可以使用 FrameBuffers 做到这一点。

现在呢?

【问题讨论】:

  • 您要么渲染到屏幕,要么渲染到其他图像。你不能同时做这两件事。您可以渲染“一部分”(通过更改视口),但这将是您渲染的 all。其余的将不会被渲染,因为它会在视口区域之外。如果没有更多关于你真正想要做什么的信息,我帮不了你。
  • 我想我有几个问题。将其写入帧缓冲区是否较慢?有没有一种将 GLSL 着色器仅应用于一部分的好方法?我想我可以使用 GL_fragCoords (或类似的东西)并针对一些统一的浮点数对它们进行测试,这些浮点数将指定我想要涟漪的区域,但我不确定这是否是正确的方法。这是我第一次进入着色器,我所知道的只是我通过网络获取的随机位,所以如果我非常不了解情况,我深表歉意。

标签: opengl glsl libgdx framebuffer


【解决方案1】:

您将要使用 ScreenUtils 而不是 FrameBuffer

这些方法可用于获取整个屏幕内容或其中的一部分。

【讨论】:

    猜你喜欢
    • 2012-12-14
    • 2014-10-17
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多