Download presentation
Presentation is loading. Please wait.
1
회전과 Quaternion HyoungSeok Kim
Multimedia Workshop 회전과 Quaternion HyoungSeok Kim
2
Euler Angles (e.g. roll, pitch, yaw) Rotation Matrices Axis and angle
Unit Quaternions Dongeui University
3
Euler Angle 표현법 정의 총 24 가지 방법 (12 fixed axes, 12 relative axes)
임의의 회전을 표현하기 위한, 좌표축을 중심으로 한 일련의 세 회전각 총 24 가지 방법 (12 fixed axes, 12 relative axes) 모든 회전이 임의의 회전을 표현할 수 있는 것은 아니다 (최소한 2개의 축이 필요) Dongeui University
4
Rotation Matrices about axes
Rotation about x axis by χ Rotation about y axis by φ Rotation about z axis by Dongeui University
5
일반적인 Rotation Matrix for i = j Otherwise
각 축과 나란한 단위 벡터들은 서로 수직인 단위 벡터로 변환된다: 오른손 좌표계를 사용하는 경우: det (R) > 0 for i = j Otherwise Dongeui University
6
Character Animation 게임 등에서 캐릭터의 동작 애니메이션이 많이 사용됨
Tomb Raider 3 (Eidos Interactive) The Legend of Zelda (Nintendo) Final Fantasy VIII (SquareSoft) Dongeui University
7
캐릭터 동작을 빠르게 하기 위한 방법 Quaternion vs. 3D Transformation Matrices
회전 합성: Quat(회전)/Vec(이동) pair 가 더 효율적 공간활용도도 좋음 (7 floats 행렬은 12 floats) point/vector 변환: 행렬이 효율적 실용적인 적용: 회전이 연속적으로 나오는 부분에는 Qaternion 사용 points / vectors / triangles 의 변환에는homogeneous transformation 행렬 사용 Dongeui University
8
Quaternion Interpolation과 카메라 제어
SLERP Introduction to the Game Camera Structuring Camera Movement Problems and Solutions Enhancements Thoughts Dongeui University
9
Interpolation 문제 두개의 “keyframe” 변환이 주어진 경우 두 keyframe 간의 중간 변환을 생성하는 문제 부드러운 동작 생성을 위해 필요 두 개의 회전 사이의 interpolate 수행 Euler angle 을 사용하는 경우? 각각의 각도를 interpolate Interpolation 수행한 값이 예측과 다름 “Long way around” Dongeui University
10
Quaternion Interpolation
LERP(Q0,Q1,t) = Q0 + t(Q1-Q0) Quaternion에서 주어진 연산 사용 4개의 원소를 interpolate 중간 값들이 rotation이 아님 Normalization 필요 Revised linear interpolation: Normalization 수행 BetterLERP(Q0,Q1,t) = normalize(LERP(Q0,Q1,t)) interpolation 비율(rate of interpolation)이 변함 Dongeui University
11
Quaternion Interpolation: SLERP
Spherical Linear intERPolation Q0 와 Q1 사이에 전형으로 interpolate 하는 대신, 단위 초구(hypersphere)의 표면 위에서 interpolation 수행 초구(hypersphere)위의 두 점을 잇는 호(arc)를 따라 Interpolate 두 quaternion 사이의 최소각 θ를 알 필요 smooth interpolation (동일한 비율로 interpolate) Θ가 최소각일 경우, 두 quaternion 사이의 최소 회전 세개 이상의 quaternion이 주어진 경우 spline interpolation도 수행 가능 Dongeui University
Similar presentations