본문 바로가기

프로그래밍/DirectX11(2D, 3D)2

[3D] 쿼터니언(Quaternion) 쿼터니언(Quaternion)은 4차원 수학적 개념으로, 3차원 공간을 회전하는 데 사용된다. 복소수(Complex number)와 유사하지만, 복소수가 2차원 평면에서 회전하는 데 사용되는 것과는 달리 쿼터니언은 3차원 공간에서 회전하는 데 사용된다고 한다. (근데 복소수가 뭔진 모른다 ㅋㅋ;;) 쿼터니언의 표기: q = w + xi + yj + zk 여기서 w, x, y, z는 실수이고, i, j, k는 각각 x, y, z 축을 나타내는 가상의 단위 벡터로 [i² = j² = k² = ijk = -1] 이다. 여기서 w는 스칼라, x, y, z는 각각 i, j, k 방향의 벡터이다. 회전을 나타내는 쿼터니언은 q = cos(θ/2) + sin(θ/2)i 으로 계산할 수 있다. (θ는 회전 각도) 3차.. 2023. 3. 9.
Win API / 윈도우 프로시저, 윈도우 메시지, 메시지 큐, 메시지 루프 본 글은 공부용으로 작성된 게시글입니다. Win API에서는 WinMain 함수와 WndProc 함수가 있다. 각 특징은 이렇게 된다. WinMain 함수 - 윈도우 프로그램의 시작점 - 윈도우를 만들고, 화면에 출력한다 WndProc 함수 - 메시지 처리 함수 - WinMain이 아닌, 운영체제에 의해 호출되는 콜백 (CallBack) 함수 - 메시지가 발생할 때 프로그램의 반응을 처리한다 이렇게만 보면 뭔지 잘 모르겠어서 조금 더 조사해보았다. 윈도우 프로시저 윈도우 프로시저(Window Procedure)는 윈도우 클래스당 하나씩(윈도우당 하나씩이 아니라) 배정되며 메시지에 대응하는 방식을 정의함으로써 윈도우의 행동 양식을 결정한다. 그래서 같은 윈도우 클래스로부터 만들어진 윈도우들은 모두 같은 윈.. 2022. 8. 29.