내 OpenGL 응용 프로그램에서 마우스를 사용하여 객체 회전을 위해 ArcBall 회전을 사용해야합니다. 보간법을 사용하는 OpenGL ArcBall 회전 및 애니메이션?
나는이 글 읽은 후 나는 쿼터니온으로 가야한다는 relized - http://www.gamedev.net/page/resources/_/technical/math-and-physics/quaternion-powers-r1095를 그리고 여기에서 구현을 사용하기 쉬운 발견 - http://www.codeproject.com/KB/openGL/virtualtrackball.aspx
하지만 내 문제는 내가 아니라 내 오브젝트 애니메이션을 할 필요가있다 저장된 두 상태 사이. 즉 -
상태 (1) = (포지션 X1, 위치 Y1, 위치 Z1, 회전 1);
상태 (2) = (포지션 X2, 위치 Y2, 위치 Z2, 회전 2);
은 *이 '돌리기'는
회전 행렬이다 그리고 애니메이션은 n 개의 단계로 이루어집니다. 동영상에 도시 추천
뭔가 - http://www.youtube.com/watch?v=rrUCBOlJdt4
I 세 axises (롤, 피치, 요우) I 쉽게 강도를 보간 할 수있는 3 개위한 별도의 각도를 사용 되었다면. 그러나 ArcBall은 회전 Matrix를 사용하기 때문에 상태 1과 상태 2 사이의 회전을 어떻게 보간 할 수 있습니까?
제안 사항?
이유를 참조하십시오. 이것을 좌표계로 옮겨야합니다. 실린더 좌표와 마찬가지로, 실린더 축은 회전축입니다 (구 좌표계에서도 동일하지만 실린더는 계산 비용이 적습니다). – datenwolf