flow-vector
article thumbnail
게임 수학 - 노멀 벡터의 회전
Math/Game Math 2023. 12. 20. 14:29

문제 어떤 벡터 A에 수직한 노멀 벡터 N을 변환할 때, 단순히 변환행렬을 곱해 주면왜곡이 생기는 경우가 있음을 알게 되었습니다. 원인 해당 경우는 벡터 A가 non-uniform scale이 될 경우 였는데 이유는 아래 그림을 보면 쉽게 알 수 있습니다. 해결 결론적으로 해결방법은 변환 행렬의 Inverse-transepose를 곱해주면 해결이 됩니다. 증명은 luna의 introduction to 3d game programming with directx12에서 참고 하였습니다.

게임 수학 - 내적(Dot Product)
Math/Game Math 2023. 11. 30. 16:05

“이득우의 게임수학” 책을 읽고 중요하다고 생각하는 부분을 정리한 내용들입니다! 내적 연산이 어떤 기하학적 의미를 가지는지 정리해 보고 주로 사용되는 곳을 정리해 보겠습니다. 내적 벡터의 내적 계산 방법 $\vec{u} = (a, b)$ $\vec{v} = (c, d)$ $\vec{u} \cdot \vec{v} = a c + b d$ 성질 교환 법칙 성립 계산 과정에서 스칼라 곱과 덧셈으로 이루어져 있으므로 덧셈에 대한 분배 법칙 성립 같은 벡터를 내적 했을 때 벡터 크기의 제곱 내적과 삼각함수와의 관계 두 벡터의 사잇각에 대한 cos 함수와 비례하는 관계를 가짐 $\vec{u} = (a, b)$ $\vec{v} = (c, d)$ $\vec{u} \cdot \vec{v} = \left\vert \vec{..

게임 수학 - 아핀 공간
Math/Game Math 2023. 11. 28. 17:37

“이득우의 게임수학” 책을 읽고 중요하다고 생각하는 부분을 정리한 내용들입니다! 어떤 물체의 크기, 회전, 전단 변환을 위해 선형변환을 2x2 정방 행렬로 만들어 보고 행렬 곱을 통해 나타내 보았다. 하지만 이동에 대해서는 행렬 곱이 아닌 벡터의 덧셈을 활용해서 구현을 했었다. 아핀 공간내에서는 행렬 곱을 통해 이동을 나타낼 수 있기 때문에 이에 대해서 정리해 보고자 한다. 아핀 공간 이동 변환을 위한 아핀 공간 동일 차원에서 행렬 곱을 통한 이동변환 행렬 설계가 안되는 이유 선형성을 만족 시킬수 없기 때문 이동 변환 후 기저 벡터는 원점을 지나지 않음 전단 변환의 성질을 활용한 이동변환 $\begin{bmatrix} 1 & a \\ 0 & 1 \\ \end{bmatrix} \cdot \begin{bma..

게임 수학 - 삼각함수
Math/Game Math 2023. 11. 21. 11:05

“이득우의 게임수학” 책을 읽고 중요하다고 생각하는 부분을 정리한 내용들입니다! 벡터의 덧셈, 곱셈 연산을 통해 직선적인 움직임을 표현 했다면 ‘회전’을 위해 삼각함수를 사용할 수 있다. 회전은 원의 궤적을 따라 이동하는 움직임 이기 때문에 원과 밀접한 연관이 있는 삼각함수가 이용이되고 이에 대해 알아보고자 한다. 삼각 함수 삼각비 직각 삼각형에서 두 변을 뽑아 각가의 비례관계를 나타냄 삼각함수 직각 삼각형을 데카르트 좌표계에 배치하여 사잇각의 범위를 실수 전체로 확장한 대응 관계 단위 원(반지름의 길이가 1)을 사용하면 쉽게 표현가능함 삼각함수의 성질 sin, cos 함수는 -1, 1사이를 반복하는 주기 함수임 $360^\circ$주기로 반복 됨 cos 함수는 좌우 대칭 (짝함수, 우함수) sin 함수..

article thumbnail
게임 수학 - 벡터
Math/Game Math 2023. 11. 16. 14:13

“이득우의 게임수학” 책을 읽고 중요하다고 생각하는 부분을 정리한 내용들입니다! 이전에 수의 구조와 함수에 대한 지식을 바탕으로 1차원에서 벗어나 2차원에서 물체를 표현할 수 있는 공간인 벡터 공간에 대해서 정리를 해보려고 하고 벡터 공간 내 원소인 벡터와 벡터 사이의 연산에 대해서 정리해보려고 한다. 벡터 공간과 벡터 벡터 공간(vector space) 정의 두개 이상의 실수를 곱집합으로 묶어 형성된 집합 (공리적 집합론 관점) 벡터 (vector) 정의 벡터 공간의 원소 표현 v = (x, y) 벡터 공간의 연산 벡터 끼리의 덧셈 벡터 공간에서 각 축에 대해 독립적으로 평행이동 하는 작업 스칼라와 벡터의 곱셈 기좀 벡터와 평행하고 원점을지나는 직선을 만듬 벡터의 크기와 이동 크기 수직선에서와 동일하게..