#version 320 es precision highp float; // 视图投影矩阵 uniform mat4 uViewProjection; // 模型矩阵 uniform mat4 uModelMatrix; // 顶点颜色(覆盖顶点属性中的颜色) uniform vec4 uColor; // 顶点属性 layout(location = 0) in vec2 aPosition; layout(location = 1) in vec2 aTexCoord; layout(location = 2) in vec4 aColor; // 输出到片段着色器 out vec2 vTexCoord; out vec4 vColor; /** * @brief 顶点着色器入口 * * 计算顶点在裁剪空间中的位置, * 并传递纹理坐标和顶点颜色到片段着色器 */ void main() { gl_Position = uViewProjection * uModelMatrix * vec4(aPosition, 0.0, 1.0); vTexCoord = aTexCoord; // 使用 uniform 颜色覆盖顶点属性颜色 vColor = uColor; }