我正在使用 C++ 中的 OpenGL ES 2.0 开发一个 Android 2.2 应用程序。
这是我的顶点和片段着色器:
static const char* cubeMeshVertexShader = "
attribute vec4 vertexPosition;
attribute vec4 vertexNormal;
attribute vec2 vertexTexCoord;
varying vec2 texCoord;
varying vec4 normal;
uniform mat4 modelViewProjectionMatrix;
void main()
{
gl_Position = modelViewProjectionMatrix * vertexPosition;
normal = vertexNormal;
texCoord = vertexTexCoord;
}
";
static const char* cubeFragmentShader = "
precision mediump float;
varying vec2 texCoord;
varying vec4 normal;
uniform sampler2D texSampler2D;
void main()
{
gl_FragColor = texture2D(texSampler2D, texCoord);
}
";
我对 OpenGL ES 2.0 开发非常陌生。
有人告诉我,如果我想在我的渲染上使用灯光,我必须对顶点和片段着色器进行一些复杂的修改。所以,我不知道怎么做,法线不是必需的。
我的问题是:
如何修改不使用法线的顶点和片段着色器?
谢谢