你在进行
glTranslatef(……)
glRotatef(……)
glRotatef(……)
glRotatef(……)
这些变换之前,先把当前矩阵保存起来,进行变换之后再还原,也就是这样:
glPushMatrix();
glTranslatef(……)
glRotatef(……)
glRotatef(……)
glRotatef(……)
glPopMatrix();
这样之后 所用的坐标还是世界坐标。做的变换世界上是在原来的世界坐标矩阵上乘以变化矩阵,如果不进行保存的话,那么世界矩阵也变了。