Передача данных из std::vector в юниформ-массив в glslC++

Программы на C++. Форум разработчиков
Anonymous
Передача данных из std::vector в юниформ-массив в glsl

Сообщение Anonymous »

У меня в шейдере есть такая форма:

Код: Выделить всё

uniform vec3 origins[10];
и std::vector в моем коде, например:

Код: Выделить всё

std::vector origins;
который заполнен десятью элементами glm::vec3.

Кто-нибудь знает, как передать это в шейдер? Я подумал:

Код: Выделить всё

GLint originsLoc = glGetUniformLocation(programID, "origins");
glUniform3fv(originsLoc, 10, origins.data());
сделал бы это, но не скомпилировался. Ошибка говорит о том, что нет соответствующей функции для вызова glUniform3fv. Как передать данные в std::vector таким образом, чтобы это удовлетворяло функции glUniform3fv?

Подробнее здесь: https://stackoverflow.com/questions/300 ... ay-in-glsl

Вернуться в «C++»