Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

For me

[DirectX12] 16) Quaternion 본문

DirectX12

[DirectX12] 16) Quaternion

GiveZero 2023. 1. 19. 18:11

Euler 과 Quarternion

Euler로 회전을 표현하게 되면, 회전 축 하나가 사라지는 짐벌락에 빠진다.

즉 한 축의 회전이 다른 축의 영향을 주는 것을 말한다.

3개의 차원으로 회전하던 축은 2개의 차원으로밖에 회전을 못한다는 단점이 생길 수 있다.

 

Quaternion은 이를 해결하기위해 사용한다.

짐벌락이 발생하지 않을 뿐더러, 연산이 빠르고 정확도도 높다.

또한, 복소수를 이용하기 때문에 행렬보다 점유 메모리 영역이 작고 계산 부하가 낮다. 따라서 두 개 회전 사이의 보간(Lerp) 표현이 가능하다. 

하지만 180보다 큰 값을 표현할 수 없다는 단점이 존재하다.

4개의 성분 (x,y,z,w) 로 이루어져 있고, (x,y,z)는 벡터 , (w)는 스칼라를 의미한다.

 

'DirectX12' 카테고리의 다른 글

[DirectX12] 18) Render Target  (1) 2023.01.19
[DirectX12] 17) 직교투영  (0) 2023.01.19
[DirectX12] 15) SkyBox  (0) 2023.01.18
[DirectX12] 14) Normal Mapping  (0) 2023.01.18
[DirectX12] 13) Shadow  (0) 2023.01.17