Java OpenGL es 2,着色器未编译
我试图做一个非常简单的指示灯,但我失败得很惨。我只知道我的着色器没有正确编译(我似乎没有得到太多错误信息)。 我的着色器是: 顶点着色器代码 片段着色器代码 有人能看出我做错了什么吗? 另外,我对opengl es着色器语法知之甚少,因此非常感谢您的帮助。Java OpenGL es 2,着色器未编译,java,android,opengl-es-2.0,shader,Java,Android,Opengl Es 2.0,Shader,我试图做一个非常简单的指示灯,但我失败得很惨。我只知道我的着色器没有正确编译(我似乎没有得到太多错误信息)。 我的着色器是: 顶点着色器代码 片段着色器代码 有人能看出我做错了什么吗? 另外,我对opengl es着色器语法知之甚少,因此非常感谢您的帮助。 uMVPMatrix应为u\MVMatrix 在编译着色器时尝试获取编译日志。是的,就是这样。我觉得自己很笨。它正在编译,我得到了一个结果,看起来仍然不正确,但我希望能找到答案,谢谢! "uniform mat4 u_MVPMatrix;"
应为uMVPMatrix
u\MVMatrix
在编译着色器时尝试获取编译日志。是的,就是这样。我觉得自己很笨。它正在编译,我得到了一个结果,看起来仍然不正确,但我希望能找到答案,谢谢!
"uniform mat4 u_MVPMatrix;"
+ "uniform mat4 u_MVMatrix;"
+ "attribute vec4 a_Position;"
+ "varying vec3 v_Position;"
+ "void main() {"
+ "v_Position = vec3(u_MVMatrix * a_Position);"
+ "gl_Position = uMVPMatrix * a_Position;" + "}";
"precision mediump float;"
+ "uniform vec3 u_LightPos;"
+ "varying vec3 v_Position;"
+ "uniform vec4 vColor;"
+ "void main() {"
+ "float distance = length(u_LightPos - v_Position);"
+ "distance = 1.0 / distance;"
+ "distance = clamp(distance, 0.0, 1.0);"
+ "gl_FragColor = vColor * distance;" + "}";