【发布时间】:2015-10-16 20:58:11
【问题描述】:
我有一个 2D 浮点数组(在这种情况下,它表示具有 R G B 值的 256 色调色板)
static float[][] glColorPaletteArray = new float[256][3];
我填充了数组,现在想将它传递给 GLES。如何在android中传递二维数组?我试试
GLES20.glUniform3fv(paletteLoc,256,glColorPaletteArray,0);
但它抱怨期待一维数组(发现 float[][] 期待 float[])。
着色器期待 vec3 统一,即
uniform vec3 palette[256];
所以我需要保留 2D 数组,以便 RGB 分量是单独的浮点数。
将 2D 数组正确传递给 GLES 着色器的秘诀是什么,这样我就可以通过使用来访问着色器中的 RGB 值
int red = palette[100].r;
【问题讨论】: