У меня есть тип структуры, который я хочу передать как униформу.Возможно ли это сделать с помощью UBO?
struct LightParams {
// ...
};
uniform LightParams uLight;
Очевидно, что это не объявляет его как единообразный блок, а вместо этого объявляет обычную униформу (и я, очевидно, должен назначать отдельных членов через glGetUniformLocation("uLight.position")
?)
Другим вариантом будет использование
uniform LightBlock {
LightParams uLight;
};
Но тогда унифицированное имя блока будет LightBlock
, а не uLight
, что немного сбивает с толку.
Неужели нет концепции использования структур в качестве блоков?