GLSL错误访问浮点数组,变量作为索引

时间:2013-02-23 21:03:26

标签: glsl

我在glsl.heroku.com中创建着色器,当我尝试访问一系列声明为这样的浮点数时:

float colors[200];

以这种方式:

int i=function();
float color=colors[i];

它没有编译,出现“编译错误”错误。 这是因为glsl不允许它还是heroku特定的问题?如果它是前者,我该如何解决它呢?

1 个答案:

答案 0 :(得分:1)

好的,我找到了答案(好吧,用户kaoD解决了它)。 heroku使用WebGL,它使用OpenGL ES 2.0,它不会将数组视为普通数组,但更像是分离的变量,所以它不能在运行时访问它们,除非它具有常量索引。