1

我只是想在片段着色器中实现 Perlin Noise。因此,我需要将大小为 512 的统一 int 数组传递给片段着色器。现在这导致我不太旧的 Mac 上的性能很糟糕(1FPS)。我试图减小数组的大小,这会导致数组中有 246 个元素的硬限制,这仍然会产生交互式帧速率。所以我的问题是:

  • 这个限制从何而来?操作系统?显卡?OpenGL版本?
  • 有没有解决的办法?我尝试使用整数纹理,但我的操作系统不支持这些!

有没有人经历过类似的事情?

4

2 回答 2

3

因此,我需要将大小为 512 的统一 int 数组传递给片段着色器。

您可以改用一维纹理。您甚至不需要整数,浮点数同样适用于 Perlin Noise。

于 2012-11-21T12:21:24.540 回答
1

它必须是硬件或着色器版本限制。你可以用纹理代替吗?

于 2012-11-21T11:42:26.260 回答