В настоящее время я программирую фонетный шейдер, использующий новую функцию ogl3, ubos.Мой буферный объект в шейдере:
`
Uniform Light {
vec3 origin;
vec3 color;
vec3 direction;
float intensity;
float linear_dissipation;
float illu_angle;
float max_illu_angle;
} Light[8];
`
Когда я вычисляю различные смещения с помощью функции
glGetActiveUniformsiv()
моя программа возвращает
origin : 0
color : 16
intensity : 48
direction : 32
illu_angle : 48
max_illu_angle : 48
linear_dissipation : 48
Я не могу использовать переменные интенсивности, illu_angle, max_illu_angle и linear_dissipation (ну, только одну из них: D).