我使用了一个着色器,它在另一个程序(在相同的环境中)工作,由于某些原因现在无法编译:
// Vertex Shader
#version 330 core
layout(location = 0) in vec3 vertexPosition_modelspace;
layout(location = 1) in vec2 vertexUV;
out vec2 fragmentUV;
uniform mat4 ortho_matrix;
void main()
{
gl_Position = ortho_matrix * vec4(vertexPosition_modelspace, 1);
fragmentUV = vertexUV;
}
// Fragment Shader
#version 330 core
in vec2 fragmentUV;
uniform sampler2D texture;
out vec4 color;
void main()
{
color.rgba = texture(texture, fragmentUV).rgba;
}
Run Code Online (Sandbox Code Playgroud)
这是一个超级基本的着色器,现在它突然开始抛出错误.
Windows 8.1 Nvidia GeForce 1080(这可能就是新问题吗?)
这是由Visual Studio输出的:
uniform sampler2D texture;
out vec4 color;
void main()
{
color.rgba = texture(texture, fragmentUV).rgba;
}
Run Code Online (Sandbox Code Playgroud)
我很惊讶这在不同的环境中编译.您已将纹理命名为与用于进行纹理查找的函数相同.您需要重命名uniform sampler2D texture;为其他内容.
| 归档时间: |
|
| 查看次数: |
1579 次 |
| 最近记录: |