OpenGL 2D贴图texture与着色器Shader
运行效果
利用GLSL操作shader着色器实现平移、纹理与顶点颜色的叠加处理:
利用GLSL操作shader着色器实现平移、旋转等操作:
定义纹理ID与绑定纹理
GLfloat vertices2[] = {
// 坐标 // 颜色 // 纹理
0.5f, 0.5f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, 1.0f, // 右上 黄
0.5f, -0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, // 右下 品
-0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, // 左下 青
-0.5f, 0.5f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f // 左上 黑
};
GLuint indices[] = {
0, 1, 3, // 起始顶点:右上 -> 右下 -> 左上
1, 2, 3 // 第二顶点:右下 -> 左下 -> 左上
};
GLuint texture;
glGenTextures(1, &texture); // 纹理ID
glBindTexture(G