因此,我开始使用特定(3.2)中的新 OpenGL 版本开发游戏。我正在使用着色器和 VBO。
如何实现轮换?(我以前只使用 glRotatef)我宁愿通过程序而不是着色器来做,因为我根本不懂着色器编码。我什至不知道从哪里开始旋转,因为我想不出它会如何工作..
注意:我需要一种简单的2D游戏方法。我想围绕自己旋转三角形(构成四边形)。
用例子详细说明..
编辑:我的顶点着色器
#version 150 core
in vec4 in_Position;
in vec4 in_Color;
in vec2 in_TextureCoord;
in float in_angle;
out vec4 pass_Color;
out vec2 pass_TextureCoord;
void main(void) {
mat4x4 roll=mat4x4(1.0);
roll[0][0]=cos(in_angle);
roll[0][1]=sin(in_angle);
roll[1][0]=-(sin(in_angle));
roll[1][1]=cos(in_angle);
gl_Position = in_Position*roll;
pass_Color = in_Color;
pass_TextureCoord = in_TextureCoord;
}