大家晚上,
我在OpenGL中使用glMultMatrixf来使用矩阵旋转我的场景:
float matrix[16] = { 1.0, 0.0, 0.0, 0.0,
0.0, 1.0, 0.0, 0.0,
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0 };
我一直在关注这个指南(link),但它有点超过我需要的顶部。
我怎么能简单地将x轴旋转45度?
干杯
答案 0 :(得分:1)
通过此旋转矩阵乘以变换矩阵应该可以解决这个问题:
float rot45X[16] = { 1.0, 0.0, 0.0, 0.0,
0.0, cos(PI/4), -sin(PI/4), 0.0,
0.0, sin(PI/4), cos(PI/4), 0.0,
0.0, 0.0, 0.0, 1.0 };
编辑:您当然也可以使用效用函数
glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
其中[x,y,z]表示旋转轴(是的,它执行围绕任意矢量的旋转)。
在你的情况下你需要这样打电话:
glRotatef(45, 1, 0, 0);