ISBN 9784798154787

Unityでわかる!ゲーム数学

Unityでわかる!ゲーム数学
著者
加藤 潔
出版社
翔泳社
刊行
2018-06

概要

Unityで動かしながらゲーム開発に必要な数学を体得する

想定読者

数学に苦手意識があるが、ゲームプログラミングに挑戦したい開発者。C#でUnityを触り始めたばかりで、座標変換・当たり判定・レンダリングの仕組みを「なぜそう動くのか」という理解まで深めたい人。

こんな人には向いていない

  • 線形代数・三角関数の基礎知識が既にあり、理論から先に体系的に学びたい読者には説明の比重が実装寄りすぎる
  • Unityをゲームエンジンとして使いこなすための操作手順書を求めている場合は対象外(数学的背景の習得が主目的の書籍)
  • 上級者向けのシェーダープログラミングや物理エンジンの内部実装まで掘り下げたい読者には範囲が広浅

読了後にできるようになること

  • 座標変換(平行移動・回転・スケール)の行列演算をUnityのTransformと対応させて実装できる
  • AABB・円・球などの当たり判定をゼロから実装し、Unityの組み込み物理と補完的に使える
  • 簡易レンダリングパイプライン(投影変換・ラスタライズ)の原理をC#コードで再現できる
  • ベクトル・行列・三角関数・クォータニオンの実用的な使い方を「動く画面」で確認しながら習得できる
  • ゲームエンジンが内部で行っている数学的処理の意味を自力で説明できる

本書のキー概念(章解説)

  • 第 1 章 基礎的な物体の運動 — 速度・加速度・フレームレートとの関係を実装で確認する出発点。数学的背景が薄い読者でも進みやすい構成
  • 第 2 章 座標変換 — 行列演算の実装価値が最も高い章。ワールド座標とローカル座標の変換をコードで追うことでTransformの挙動が腑に落ちる
  • 第 3 章 当たり判定 — 実務直結度が高い章。ColliderなしでAABBや球の衝突検出を自前実装することで、物理エンジン依存からの脱却ポイントが分かる
  • 第 4 章 簡単なレンダリング — 投影変換の原理を体験できる章。GPUが何をしているかを把握したい読者はここを重点的に読む価値がある
  • 第 5 章 立体物の作成 — 3Dメッシュ生成の基本。Part 1の集大成として座標変換と組み合わさった応用になる
  • 第 6 章 基本的な数学理論 — Part 2では理論を整理し直す。Part 1を終えてから読むと各公式の意味が具体的なイメージとセットで定着しやすい
  • 第 7 章 より高度な数学理論 — クォータニオンや補間など、実際のゲームで頻出するより高度な主題を扱う。Part 1の体験が前提

ハイライト

  • 普段ゲームエンジンに任せているゲームの数学的背景を実装し、動作を体験することで、C#プログラムと数式とを具体的なイメージでつなげることが可能になります。(「動かして理解する」という本書の独自アプローチが最も端的に表現されている一文)
  • 第一線でゲーム数学の授業を担当する著者が、「数学は苦手」という人におくる、ゲーム数学が「わかる」ようになる一冊です。(著者の実務・教育経歴と対象読者層の関係を示す記述)

編集メモ

Qiita 記事での直接言及は確認できず(ISBN検索・書名検索ともにゼロ件)。楽天ランキング情報も入力に含まれていない。2018年6月刊行でゲーム数学×Unityという特定ニッチを扱う良書だが、外部シグナルに基づくメカニカル評価では supplementary に留まる

読む前に押さえておきたいこと

  • C#の基本文法(変数・ループ・クラス・メソッド)が読み書きできること
  • Unityエディタの基本操作(Scene/Game ビュー、GameObject、Inspectorの使い方)
  • 高校数学レベルのsin/cosの概念(「苦手」でも可だが、ゼロ知識からは難しい)

学習のコツ

  • Part 1(1〜5章)を手元でUnityプロジェクトを動かしながら通読し、その後Part 2(6〜7章)で理論を整理するという順序が著者の想定通り。理論から入ろうとすると途中で止まりやすい
  • 2章(座標変換)と3章(当たり判定)は独立性が高く、実務で詰まったタイミングで参照書として戻ってきやすい章。初読時は流し読みでも、実装中に再読すると価値が倍増する
  • Chapter 6・7の数学理論は、Part 1の実装体験なしに読むと抽象的に映る。Part 1をひととおり終えてから戻るのが効率的
出版社による内容紹介

ゲームに必要な数学を動かしながら学ぼう! ゲームを開発する際に、数学的知識は欠かすことができません。 しかし、今から高校以上の数学を学び直すのは、 ハードルが高く、何よりも根気が必要です。 本書では、「動かしながら学ぶ」をコンセプトに、 ゲームエンジンUnityを使って、実際に画面内で物体を動作させながら 座標変換、当たり判定、レンダリングなど、ゲームに必要な数学的知識を 学ぶことができます。 また、普段ゲームエンジンに任せている ゲームの数学的背景を実装し、動作を体験することで、 C#プログラムと数式とを具体的なイメージでつなげることが可能になります。 第一線でゲーム数学の授業を担当する著者が、 「数学は苦手」という人におくる、ゲーム数学が「わかる」ようになる一冊です。 Part 1 数学をUnityで体験する Chapter 1 基礎的な物体の運動 Chapter 2 座標変換 Chapter 3 当たり判定 Chapter 4 簡単なレンダリング Chapter 5 立体物の作成 Part 2 ゲームに必要な数学理論 Chapter 6 基本的な数学理論 Chapter 7 より高度な数学理論

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。