この本の5割で ゲームは出来る
ゲームに必要な数学&物理学を基礎から解説しています。
ちなみに本書の5割の知識があれば、就職作品のゲームは作れます。
数学や物理学の世界は広大です。
本書はその世界から、ゲーム開発に必要なものだけピックアップして解説してくれます。
だから、基礎が効率良く身に付けられます。
数学はどこまで必要か?
ゲームプログラミングの基本になる数学は次の3つです(いわゆる御三家)。
- 三角関数
- ベクトル
- 行列
教師としての経験上、とりあえずこの3つを押さえれば(2Dでも3Dでも)就職作品のゲームは作れます。
具体的には、自在にキャラを移動・回転・拡縮できるようになります。
(物理の方はウソ物理でも面白ければ何とかなる)
本書は、この3分野の中でもゲームに使う所だけコンパクトにまとめてあります。
そんな割り切った構成なので、必要な所を素早く学ぶには最適といえます。
また中学校の教科書レベルから段階的に学べるので、文系の人にも助かります。
かくいう私も高校大学はずっと文系でしたが、本書を抵抗なく読めました。
ゲームプログラミングのお供に
本書を読むコツとしては
- 先頭から順に読み進めるより、興味のある章を優先する
- 電卓をガンガン使う(楽なので)
- 公式がゲームのどんな場面で使えるか妄想する
のような点を心掛けてみて下さい。
冒頭で述べたように、就職作品としてのゲームなら、本書の5割の内容で十分制作できます。
だからゲームプログラミングを学ぶ人には、お釣りが来るほど役立つ一冊と言えます。
補足 行列の形式について
どこに書こうか迷いましたが、ここで説明しておきます。
DirectX と OpenGL では、行列の形式が違います。
巷の書籍やサイトでは、その点に触れてないものも多く、ちょっとした混乱の元になっているようです。
私も以前DirectXの講義で課題を出したら、ある学生はネットで拾ったOpenGLのソースを元にして組んだせいでメダパニってました。
次のように DirectX と OpenGL では、行列のタテヨコが逆転します。
DirectX形式(別名 行優先)
(1) | (2) | (3) | (4) |
(5) | (6) | (7) | (8) |
(9) | (10) | (11) | (12) |
(13) | (14) | (15) | (16) |
OpenGL形式(別名 列優先)
(1) | (5) | (9) | (13) |
(2) | (6) | (10) | (14) |
(3) | (7) | (11) | (15) |
(4) | (8) | (12) | (16) |
こんな風に違いがあるので、書籍やサイトを見る時は、まずどちらの形式か確認しましょう。
はっきり明言してれば助かりますが、そうじゃないケースも結構あります(OpenGL形式の本に多い)。
ちなみに本書は OpenGL形式 です。またDirectX形式との違いにも、しっかり言及してます。
あわせて読みたい
DirectX ゲームグラフィックス プログラミング
行列の説明は、初心者にはこっちの方が分かりやすい。
もちろん行列は DirectX形式 です。
私のレビュー
実例で学ぶゲーム3D数学
Fletcher Dunn, Ian Parberry, 松田 晃一 / オライリージャパン
また本書の次のステップとして。詳しい理論の解説に優れた良書。
クォータニオンも扱ってます。
行列は DirectX形式 です。
私のレビュー