Если вы не используете контекст, который на самом деле поддерживает OpenGL 4.5+, получите vec3, используя "старый способ", например так:
float f[3] = {0.0f};
glGetUniformfv(program, glGetUniformLocation(program, name.c_str()), f);
Новый glGet n * 1005 только для настольных ПК* Единые точки входа существуют только для дополнительной безопасности, аналогично strncpy против strcpy.
Кроме того, если вы do используете вариант glGet n , вы должны вместо этого пройти 123 для bufSize , так как это число байтов.