Search code examples
cuniformindices

glGetActiveUniformsiv: find uniformIndices[] when Uniform Block Object contains an array of Struct Objects?


For example,

struct A{
   GLint a1;
   GLint a2;
   GLint a3;
};

Uniform X{
    A a[8];
}x;

GLchar* uniformNames[]={"x.a"};
GLuint uniformIndices[1]={0};

Now,

glGetUniformIndices(programID, 1, &uniformNames, &uniformIndices);

-- doesn't return uniformIndices[]? I think I am making an obvious mistake which I am not able to figure out. Please help me out.


Solution

  • I think I got where I was going wrong, to get the indices the names had to be of the form, x.a[0], x.a[1] and so on.