错误C7011:来自" vec4"的隐式转换到" vec3"

时间:2014-08-21 22:32:54

标签: glsl

我尽我所能,并没有人使用与我相同的基本代码来解决这个错误。

有人请看下面的代码,让我知道我需要修理的内容,谢谢你:

gl_Position = vec4(0.25 * position,1.0);

我知道这种新事物,因为我正在学习GLSL,所以非常感谢帮助。

编辑:如果我正确地读了其他人类似的错误,它在我的片段文件中,而不是顶点。以下代码可能更有助于解决这个问题。

#version 430

out vec3 fragColor;

void main()
{
 fragColor = vec4(0.0, 1.0, 1.0, 1.0);
}

1 个答案:

答案 0 :(得分:2)

我猜"位置"变量声明为vec4,但构造函数需要一个vec3表达式,因为您将第四个元素作为标量1.0传递。

尝试 gl_Position = vec4(0.25 * position.xyz,1.0);