0
我正在做两个对象在OpenGL的旋转。其中一个工作:GLM - 旋转使对象消失
Model1 = glm::translate(...);
Model1 = glm::scale(...);
Model1 = glm::rotate(Model1, 90 , glm::vec3(1,0,0));
和其中一个犯规:
Model2 = glm::translate(...);
Model2 = glm::scale(...);
Model2 = glm::rotate(Model2, 90 , glm::vec3(0,0,0));
这让我的对象消失。
我认为这是由于乘以0(或相似)造成的。 那么,我应该如何表示不轮换?
轴角是一种使用旋转的好方法,或者应该将它们存储为四元数并使用不同的函数,或者每次旋转时都将其转换回角度轴?
为什么不移除“Model2 = glm :: rotate(Model2,90,glm :: vec3(0,0,0));”? – robor78
原因我在** n **对象的循环中执行它,并且我想要每次应用旋转,即使它的旋转类似于'glm :: rotate(Model2,90,glm :: vec3(0, 0,0));'(物体是可旋转的,我必须每次检查是否没有这种消失的情况) –