1
我正在關注本網站www.learnopengl.com上的教程,並且在着色器教程的末尾,我嘗試將我自己的統一變量添加到片段着色器,像這樣:OpenGL着色器錯誤C1068:類型構造函數中的數據太多
#version 330 core
in vec3 ourColor;
out vec4 color;
uniform vec4 changeColor;
void main()
{
color = vec4(changeColor, 1.0f);
}
,我編譯和改變這樣的統一的變量:
ourShader.Use();
GLint fragColorUniformLocation = glGetUniformLocation(ourShader.Program, "changeColor");
glUniform4f(fragColorUniformLocation, 0.0f, 1.0f, 0.0f, 1.0f);
ourShader.use()僅僅是一個類着色器的方法,這是我們在教程中對Shader操作中寫道,它只是簡單地使用上述着色器程序。
的OpenGL渲染一切就好了,當我註釋掉我勻變速和ourShader.use(後兩行)。但是,當我嘗試添加一個統一的變量,着色器編譯器抱怨說是類型構造太多的數據。我搜索了網頁,並找不到有用的東西,如果這是重複的,請告訴我,我將刪除該帖子。
哦謝謝,我應該看到了。 –