CGとゲームの技術

メディア学大系 2

CGとゲームの技術

  • 三上 浩司 東京工科大教授 博士(政策・メディア)
  • 渡辺 大地 東京工科大教授 博士(工学)

ゲーム開発に関わるさまざまな要素技術を総合的に学ぼうとする人を対象としたゲーム開発とCG技術のテキスト。

ジャンル
発行年月日
2016/04/22
判型
A5
ページ数
208ページ
ISBN
978-4-339-02782-2
CGとゲームの技術
重版中出来次第出荷
現在重版中につき出来次第出荷致します。予約受付中。

定価

2,860(本体2,600円+税)

カートに入れる

電子版を購入

購入案内

  • 内容紹介
  • 目次
  • 著者紹介

【読者対象】
主にゲームの制作に興味を持ち,特定のソフトウェアやツールの操作ではなく,コンテンツを構成する要素技術に興味を持ち,発展させようとする学生

【書籍の特徴】
 著者らは,4年制大学において体系的な「インタラクティブゲーム制作の実践教育」カリキュラムを構築し,文部科学省現代GPや情報処理学会優秀教育章,優秀教材賞,関東工学教育協会優秀教材賞などを受賞しました.本書はその根幹を形成した考え方を具現化した書籍です.近年では,3DCGソフトやゲームエンジンの性能向上に伴い,基本無料で高性能なソフトウェアを誰もが利用できる環境が整いました.それに伴い,特定のソフトウェアを操作するためのマニュアル本も多く出版されております.本書では,ソフトウェアによらない,CGやゲーム制作における,普遍的な制作技術やソフトウェアの中で動く基盤技術を理解するための書籍です.本書の内容を理解し,既存のソフトウェアでは実現不可能なCG表現やゲーム表現にチャレンジし,この分野をさらに発展させる人材の育成を目指し,その入り口になるような位置づけとして執筆しています.

【各章について】
 第1章では現在までに至るゲームの進化と発展に触れながら,プラットフォームが多様化し,プレイヤーの遊び方が変化してきた現状について俯瞰します.第2章では,ゲームを開発するにあたり基盤的な考え方となる「遊び」について言及しつつ,人を楽しませるゲームの企画についての根幹について述べていきます.第3章では主にゲームのプラットフォームとなるハードウェアについて,第4章ではゲームを開発するための開発環境とプログラミング言語,ゲームエンジンについて述べています.第5章ではゲーム開発を行う際の開発工程や体制について述べています.第6章から第10章は,CGやゲーム制作において必要となるプログラミングの知識として,並列処理やAI,シェーダ,サウンドなどについて,章ごとに解説しています.第11章では,それまでの内容をもとにゲーム開発を実践する際に生じる課題について紹介し,コンテンツを完成させるための基盤的な知識について,事例を紹介しています.

【著者からのメッセージ】
著者たちはコンテンツの高度化のために,制作技術の教育と研究開発に取り組んできました.現在は便利なツールが増え,コンテンツを作ることは容易になってきました.一方で,この便利なツールをさらに便利にしたり,さらに高度な表現を容易に実現したりするためには,その技術の根幹を理解する必要があります.発展する制作技術の利用者ではなく,制作技術を発展させる研究開発を担える人材を育成することを目指していきます.本書をきっかけにそのような目的を持ち,さらなる専門書を手に取る人が増えることを期待します.

1.ゲームの進化と発展
1.1 ゲーム産業の規模
1.2 ゲーム産業の構造
 1.2.1 ゲーム産業に関わる人材
 1.2.2 ゲーム産業の構造
 1.2.3 家庭用ゲーム
 1.2.4 アーケードゲーム
 1.2.5 ソーシャルゲーム
1.3 ゲーム産業の系譜
 1.3.1 ゲームの誕生
 1.3.2 ファミコンの登場と米国の変化
 1.3.3 2次元から3次元へ
 1.3.4 携帯ゲーム端末の飛躍
1.4 ゲームの提供形態による差異
 1.4.1 アーケードゲーム
 1.4.2 家庭用ゲーム
 1.4.3 ソーシャルゲーム
1.5 ゲームの適用範囲の拡大
 1.5.1 シリアスゲーム
 1.5.2 ゲーミフィケーション
 1.5.3 その他の応用
演習問題

2.ゲームの企画
2.1 ゲームと遊び
 2.1.1 遊びの形式的特徴
 2.1.2 遊びの定義と定義を超えたゲーム
 2.1.3 遊びの分類
 2.1.4 ‌ケイティ・サレンによる「ゲームの定義」と「ディジタルゲームの定義」
2.2 ゲームデザイン論
 2.2.1 MDAフレームワーク
 2.2.2 ゲームニクス理論
2.3 企画の立案
 2.3.1 コンセプトシート
 2.3.2 企画書とは
 2.3.3 企画書を書くための訓練
 2.3.4 企画書の構成要素
 2.3.5 まとめ
演習問題

3.ハードウェアアーキテクチャ
3.1 ハードウェアアーキテクチャの概要
3.2 CPU
3.3 メモリ
3.4 ストレージデバイス
3.5 GPU
3.6 その他のユニット
3.7 据置型ゲーム機のアーキテクチャ
3.8 携帯型ゲーム機のアーキテクチャ
3.9 スマートフォンのアーキテクチャ
演習問題

4.ゲーム制作の環境
4.1 ゲーム制作プラットフォーム
 4.1.1 Windows
 4.1.2 MacOSX,iOS
 4.1.3 Linux
 4.1.4 Android
 4.1.5 Web
4.2 プログラミング言語と3Dライブラリ
 4.2.1 C++
 4.2.2 Java
 4.2.3 C#
 4.2.4 JavaScript
 4.2.5 Objective-C
 4.2.6 OpenGL
 4.2.7 DirectX
4.3 ゲームエンジン
4.4 ゲーム制作用ツールシステム
演習問題

5.開発の体制と手順
5.1 開発の体制と環境の構築
5.2 機能仕様と構造仕様
5.3 ゲームに適した全体設計
5.4 素材の作成
5.5 制作工程モデル
5.6 プロトタイプ開発と分析
5.7 アルファ版とベータ版,そしてデバッグ
演習問題

6.並列処理プログラミング
6.1 並列処理プログラミングの概要
6.2 コンピュータの処理単位
6.3 マルチコアCPUとGPU
6.4 マルチスレッドプログラミングの基本
6.5 スレッドセーフ
6.6 スレッドの同期・非同期
6.7 マルチスレッドの利用方法
演習問題

7.回転の数学
7.1 ゲームプログラミングと座標変換
7.2 行列によるモデリング変換
7.3 オイラー角
7.4 方向ベクトルとアップベクトル
7.5 四元数
7.6 四元数による姿勢表現
演習問題

8.ゲームAIと群衆シミュレーション
8.1 人工知能とゲーム
8.2 ゲームにおけるAIの応用
8.3 ゲームAIの役割と分類
 8.3.1 ルールベースAI
 8.3.2 ステートベースAI
 8.3.3 ビヘイビアベースAI
 8.3.4 タスクベースAI
 8.3.5 ゴールベースAI
 8.3.6 ユーティリティベースAI
 8.3.7 シミュレーションベースAI
8.4 群衆シミュレーション
演習問題

9.シェーダー技術
9.1 シェーダーの概要
9.2 GPUの歴史的経緯
9.3 グラフィックスパイプラインの発展
9.4 シェーダーの種類
9.5 初歩的なシェーダープログラム
演習問題

10.サウンドプログラミング
10.1 サウンドプログラミングの概要
10.2 音のデータ形式とフォーマット
10.3 サウンドプログラムの基本
10.4 BGMのストリーミング再生
10.5 効果音(SE)の再生
10.6 音と画面の同期
10.7 音自体のプログラムによる制御
演習問題

11.企画・プロダクションの実例
11.1 アイデア,企画における注意事項
 11.1.1 コンセプトの重要性
 11.1.2 オリジナリティのあるタイトルの考案
 11.1.3 ターゲットの明確化
 11.1.4 あいまいな感覚の排除
 11.1.5 ギミックの数への過度な期待の回避
 11.1.6 物量勝負のゲームと短期プロジェクトの不整合
 11.1.7 ホラーなどの特殊ジャンルの注意点
 11.1.8 プレイヤーの視点と制作の物量の関係
 11.1.9 社会性の考慮
11.2 設定に関わる注意事項
 11.2.1 詳細なサーベイの重要性
 11.2.2 迅速な決断
 11.2.3 テーマの本質的な活用
 11.2.4 ゲームの世界におけるプレイヤーの位置付けの明確化
 11.2.5 ゲームの世界におけるプレイヤーの敵対者の明確化
 11.2.6 主人公の外観の再検討
 11.2.7 整合性の担保
 11.2.8 ビジュアルによる論理的な表現
11.3 開発手段に関わる注意事項
 11.3.1 手段の目的化の回避
 11.3.2 企画内容に基づく開発環境の論理的選択
 11.3.3 ノスタルジックな技術への固執
11.4 ゲームデザインの注意事項
 11.4.1 制約は論理的提示
 11.4.2 リスクとリターンのバランス
 11.4.3 ゲームの特徴のより有効的な活用
 11.4.4 異なるパート間の調和
 11.4.5 複雑なアクションのための操作性の配慮
 11.4.6 ゲーム内の移動ストレスの軽減
 11.4.7 謎解きのための設定の重要性
11.5 実装における注意事項
 11.5.1 音の重要性
 11.5.2 エフェクトの重要性
 11.5.3 ビジュアルやゲームプレイを通じた世界設定の提示
 11.5.4 ゲーム性に適した主人公や敵キャラクターの画面内比率の検討
 11.5.5 運頼みの設計の回避
 11.5.6 予測可能な行動の実装
 11.5.7 物理演算の是非の検討(リアルと誇張)
 11.5.8 リアルとリアリティの差異
 11.5.9 操作性と難易度の関係性
11.6 チーム運営に関わる注意事項
 11.6.1 迅速なプロトタイプ実装の重要性
 11.6.2 ゲームにおける特徴的な部分の選択と集中
 11.6.3 締切から逆算したスケジュール設定
 11.6.4 「付け足す」だけでなく「削る」ことの重要性
 11.6.5 多数決の危険性
 11.6.6 開発者の主張とアドバイスのせめぎ合い
 11.6.7 自らのゲームに対する厳格な評価
 11.6.8 自らのゲームに対する客観的な評価
 11.6.9 開発とその先の完成を楽しむことの重要性
 11.6.10 定期的なレビューの重要性
 11.6.11 リアルミーティングの重要性
 11.6.12 積極的なミーティングのための提示資料の重要性
 11.6.13 発表やレビューにおける記録の重要性
 11.6.14 ほかの作品への質疑やフィードバックの重要性
 11.6.15 学生プロジェクトにおけるリーダーの位置付け
演習問題

引用・参考文献
索引

三上 浩司(ミカミ コウジ)

渡辺 大地(ワタナベ タイチ)

☆シリーズ特設ページ☆