iOS向けだけどObjective-CじゃなくてC++で作るってのが刺さる人には刺さりそうですね。
OpenGL ESとC++で作るiPhone/iPad実戦3Dゲーム
- 作者: 岩渕亮
- 出版社/メーカー: 秀和システム
- 発売日: 2013/04/25
- メディア: 単行本
- この商品を含むブログ (2件) を見る
目次
■Chapter 01 ゲームを作ろう ― 3D戦車ゲーム
1-1 デバイスを知らなければゲームは作れない ― ハードウェアの基礎知識
1-2 3Dはこれからのゲームの中心 ― 三次元グラフィックの基礎知識
1-3 良いゲームを考えるために ― デザインシーケンス
- ゲーム開発の流れ
- 対象ハードウェアを知る
- 題材を決める
- ルール設計
- プロトタイプデザイン
1-4 詳しく掘り下げ、ゲームを楽しくする ― 戦車の情報集めとルール化
- 戦車の登場
- III号戦車、IV号戦車
- 戦車の構造
- 曲がる仕組み
- 装甲厚
- 戦術
■Chapter 02 開発環境の準備 ― ゲームエンジン
2-1 ゲームエンジンの機能
2-2 開発環境の構築
- インストール
- プロジェクトをスタート
- C++を使うためには
- 開発の準備
2-3 ゲームエンジン開発
- 定数の準備
- ベクトル
- マトリックス
- プリミティブ
- シェーダー
- シェーダーの読み込み
- シェーダーの使用開始
- アプリケーションコア
2-4 ゲームエンジンでひな形を改訂
- アプリケーションコアの作成
- データの準備
- フレーム更新
- フレームの描画
- テスト
2-5 テクスチャ
- テクスチャ対応シェーダー
- アプリケーションの書き換え
■Chapter 03 戦車モデルをつくる ― IV号戦車登場
3-1 IV号戦車とは
- IV号戦車G型
- モデル作成
3-2 階層構造モデル
- バンドルリソースへの組み込み
- 階層構造ポリゴンクラス
3-3 戦車クラス
- Update関数
- Draw関数
3-4 戦車を表示する
■Chapter 04 地形をつくる ― カメラとワールド座標
4-1 どこから見ているの?
4-2 地形データ
■Chapter 05 スプライトとテキスト ― ゲームの情報表示
5-1 スプライト
- スプライトクラス
- シェーダーの実装
5-2 テキスト表示
- フォントの作成
- フォントクラス
- テキスト表示
■Chapter 06 戦車を動かす ― ユーザーインタフェース
6-1 入力操作
- マルチタッチの有効化とRetina対応
- タッチイベントの受け入れ
6-2 戦車の走行
- 戦車の操作
- 操作パネルのデザイン
- 操作パネルの入力値
- 速度制御
- 旋回操作
- 戦車の実装
- 操作パネルの表示
- 車輪の回転
6-3 砲塔旋回
- 旋回ハンドル
- 主砲の角度
■Chapter 07 ゲーム世界を構築する― 戦車オブジェクト管理
7-1 敵戦車T-34登場
- モデル作成
- T-34の組み込み
7-2 ゲーム世界の構築
- 戦車オブジェクトの管理クラス
- ゲーム世界のクラス
■Chapter 08 主砲の発射 ― 弾道と戦車の物理計算
8-1 主砲発射
- 砲弾の物理
8-2 砲弾オブジェクト
8-3 発射ボタン
- ダブルタップの受付
8-4 荷重移動
■Chapter 09 戦車の爆発 ― パーティクルとエミッター
9-1 パーティクルの定義
9-2 エミッター
- エミッターの定義
- エミッターオブジェクト
- エミッターオブジェクトの初期化
9-3 パーティクルの描画
- 加算合成
9-4 パーティクルシェーダー
- アルファ合成
9-5 3Dスプライト
9-6 主なパーティクルの設定値
- 煙
- 炎
- 花火
■Chapter 10 衝突 ― コリジョン
10-1 コリジョンの計算
10-2 装甲とコリジョン
10-3 被弾
■Chapter 11 地面を走行する ― 戦車らしさとゲームらしさ
11-1 走行モデル
- 一輪車の場合
- 四輪車の場合
- 戦車の場合
11-2 地形高度の取得
11-3 戦車の高度を決定する
■Chapter 12 戦車からの視点 ― ビュー・カメラ移動
12-1 コマンダーズキューポラ
12-2 視点の変更を実装する
■Chapter 13 樹木とスカイドーム― 背景空間とゲームリソースの節約
13-1 スカイドーム
13-2 スカイドームクラス
13-3 樹木
13-4 樹木テクスチャーの作成
13-5 樹木クラス
13-6 樹木シェーダー
13-7 ビルボードの明るさ