ゲームプログラミングに必要かもしれない数学 その1 -ベクトル編-

参考書籍

ゲームプログラミングのための3Dグラフィックス数学

ゲームプログラミングのための3Dグラフィックス数学

ゲームプログラミングのためのリアルタイム衝突判定

ゲームプログラミングのためのリアルタイム衝突判定

ゲームプログラミングのための数学と物理

ゲームプログラミングのための数学と物理

ベクトル

  • ベクトルとは
  • 和、差、実数倍
  • 長さ
  • 正規化
  • 内積
  • 外積
  • 射影
  • ベクトルクラス

ベクトルとは

大きさと向きを持つ量。始点から終点までの距離。

\vec ~V = ( b_{x} - a_{x}, b_{y} - a_{y} )

和、差、実数倍


\vec a = ( a_{x}, a_{y} ), \vec b = ( b_{x}, b_{y} )
\vec a + \vec b = ( a_{x} + b_{x}, a_{y} + b_{y} )


\vec a = ( a_{x}, a_{y} ), \vec b = ( b_{x}, b_{y} )
\vec b - \vec a = ( b_{x} - a_{x}, b_{y} - a_{y} )

  • 終点から始点を引く


\vec a = ( a_{x}, a_{y} ), k = 実数
k\vec a = ( ka_{x}, ka_{y} )

長さ


\vec a = ( a_{x}, a_{y} )
\mid~{\vec a}\mid = \sqrt{a_{x}^2 + a_{y}^2}

正規化(Normalize)


単位ベクトル化(長さで割る)\frac{\vec a}{\mid~{\vec a}\mid}

内積

2つのベクトルについて
\vec a = ( a_{x}, a_{y} ), \vec b = ( b_{x}, b_{y} )
同じ成分同士を掛けて足した実数値
\vec a \cdot \vec b = a_{x}b_{x} + a_{y}b_{y} = \mid \vec a \mid \mid \vec b \mid \cos \theta

射影

mimetexを使ってみました。面倒くさい。。。
※眠いので続きは明日書く