2016-09-03 6 views
0

OpenGL의 두 개체에서 회전을 수행하고 있습니다. 내 개체 수GLM - 회전으로 인해 개체가 사라집니다.

 Model2 = glm::translate(...); 
     Model2 = glm::scale(...); 
     Model2 = glm::rotate(Model2, 90 , glm::vec3(0,0,0)); 

가 사라 : 나던

 Model1 = glm::translate(...); 
     Model1 = glm::scale(...); 
     Model1 = glm::rotate(Model1, 90 , glm::vec3(1,0,0)); 

하나를 : 하나의 작품.

나는 이것이 0 (또는 sth 유사)에 의한 곱셈으로 인해 발생한다고 가정합니다. 그렇다면 순환 게재를 어떻게해야합니까?

축 각도는 회전을 사용하는 좋은 방법입니까, 아니면 회전을 적용 할 때마다 쿼터니언으로 저장하고 다른 기능을 사용하거나 각도 축으로 다시 변환해야합니까?

+1

"Model2 = glm :: rotate (Model2, 90, glm :: vec3 (0,0,0));"줄을 제거하지 않는 이유는 무엇입니까? – robor78

+0

왜냐하면 ** n ** 객체의 루프에서이 작업을하고 있기 때문에, 회전이 glm :: rotate (Model2, 90, glm :: vec3 (0, 0,0));'(객체는 회전 가능하며 사라지는 사례가없는 경우 매번 확인해야합니다.) –

답변

4

그렇다면 순환 게재를 어떻게해야합니까?

각도가 0 인 경우 (90 대신). 회전 축을 퇴보시키지 않고.