Да, это возможно. Вы объявляете унифицированные массивы аналогично тому, как вы делаете это в C, например,
uniform float v[10];
Затем вы можете установить их значения, используя glUniform{1,2,3,4}{f,i}v
GLfloat v[10] = {...};
glUniform1fv(glGetUniformLocation(program, "v"), 10, v);