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

这篇博客介绍了OpenGL中2D纹理texture的使用和着色器Shader的应用,包括运行效果展示、纹理ID的绑定、平移与旋转操作,以及如何通过着色器实现颜色混合和顶点颜色叠加。同时,详细给出了片段和顶点着色器的代码,以及鼠标滚轮事件处理旋转的实现方法。
最低0.47元/天 解锁文章
2150

被折叠的 条评论
为什么被折叠?



