Допустим, у меня есть программа OpenGL, которая имеет унифицированный атрибут diffuseColor. Я установил это следующим образом:
GLint location = glGetUniformLocation(handle, "diffuseColor");
glUniform3f(location, 1, 0, 0);
Теперь я хотел бы вернуть ему значение по умолчанию, которое закодировано в коде шейдера. У меня нет доступа к исходному коду, но я могу вызывать функции OpenGL API в скомпилированной программе. Есть ли способ прочитать значение по умолчанию и установить его с помощью glUniform3f
? Или даже лучше, есть что-то вроде glResetUniform3f(GLint loc)
?