本記事はUnity基礎本の目次を掲載しています。本書は以下より入手できます。

「脱初心者向け Unity基礎本 Unityで本格的なサンプルゲームを作成してみよう」シリーズの 第6弾

今回の本格的なサンプルゲームは ARゲーム です。
ARゲームの「ARシューティングゲーム」作成にトライします!

(ARの基礎も説明していますので、AR開発が初めてでも大丈夫です。)
Unityサンプル本_DL_06_03_T
ぜひこれを参考に、自分のアイデアを詰め込んだ自分用ARシューティングゲームの作成にもトライしてみて下さい。

【目次】


はじめに
 【脱初心者向けの本書シリーズについて】
 【本書(Vol.6)について】
 【キャラクター紹介】


Unityで「ARシューティングゲーム」を作ってみよう


第1章. AR の 概要

第1.1章. ARとは何か
 【ARとは(ARとVRの比較)】
  ① ARとは
  ② VRとは

 【ARの機能】
  ① ARで使われる一般的な基本機能
  ② 現実の拡張をより発展させる追加機能

第1.2章. ARの種類
 【現実の認識方法による分類】
  ① ビジョンベースAR
  ② ロケーションベースAR

 【ARの実現方式による分類】
  ① ARアプリ
  ② WebAR
  ③ インストール済みアプリ上

第1.3章. ARの開発法
 【ARの開発法】
  ① ARの開発法の種類
  ② AR用SDKを用いて開発
  ③ ARプラットフォームの提供開発環境で開発

 【Unityを用いたAR開発】

第1.4章. 本書でのAR開発方針
 【本書でのAR開発の構成】

 【本書でのAR開発手順】


第2章. 対決インベーダーのAR以外の作成

第2.1章. 対決インベーダーのAR以外作成の手順
 【本書でのAR開発手順】

 【本ゲームのAR以外機能作成手順の概要】

第2.2章. プロジェクト単位・シーン単位の作業
 【プロジェクト単位の作業】
  ① プロジェクトの新規作成
  ② Unityへ素材の取り込み
  ③ プラットフォームの設定

 【シーン単位の作業】
  ① シーンの新規作成

第2.3章. ARでない仮の環境を構築
 【ARでない仮の環境の構築方針】
  ① ARアプリ開発で必要な情報
  ② 仮の環境での対応策

 【ARでない仮の環境を構築】
  ① 仮のAR Session OriginとAR Camera
  【参考】【空のオブジェクトとは】
  ② 仮のオブジェクト配下に環境を構築

第2.4章. アセットを用いた射撃機能の作成
 【拳銃アセットの用意】
  ① アセットストアからアセットの取得
  【参考】【Unity Asset Store】
  ② アセットをUnityに取り込む
  【参考】【Projectビュー内のオブジェクト名が長い場合】

 【拳銃アセットの配置】
  ① 拳銃アセットをシーン上に配置
  ② 射撃用UIボタンの配置
  【参考】【色の設定方法】
  【参考】【UnityのUser Interface】

 【拳銃アセットの射撃機能の作成】
  ① アセットの既存スクリプトの修正(SimpleShoot)
  【参考】【プログラムの詳細説明:SimpleShootの一部】
  【参考】【プログラム内でのコメントアウト】
  ② 射撃ボタンの設定
  ③ ゲームを実行してテスト

第2.5章. 弾丸アセットの設定
 【弾丸アセットの設定確認】
  ① 弾丸アセットの既存設定の確認
  ② 弾丸アセットの設定変更
  【参考】【タグ(Tag)の使用】

 【弾丸アセットに自動削除用の機能追加】
  ① 新規スクリプトの作成
  【参考】【Visual Studioが起動しない場合】
  【参考】【プログラムに書き間違えがある場合】
  【参考】【初心者のよくあるミス】
  【参考】【プログラムの詳細説明:BulletController】
  ② スクリプトをオブジェクトに関連付け
  ③ ゲームを実行してテスト

第2.6章. アセットを用いた敵ドローンの作成
 【敵ドローンの用意】
  ① アセットストアからアセットの取得
  ② アセットをUnityに取り込む

 【敵ドローンアセットの配置と設定】
  ① 敵ドローンアセットをシーン上に配置
  ② 敵ドローンのPhysics設定
  【参考】【理想のコライダーの形と大きさ】
  【参考】【Colliderのトリガー機能】

 【敵ドローンの移動機能の作成】
  ① 新規スクリプトの作成
  【参考】【プログラムの詳細説明:DroneController】
  【参考】【Vector3.MoveTowards関数】
  【参考】【ゲームオブジェクトの移動方法】
  【参考】【FixedUpdate関数】
  ② スクリプトをオブジェクトに関連付け
  ③ ゲームを実行してテスト
  【参考】【Sceneビューでのゲーム実行確認】

第2.7章. 敵ドローンの当たり判定と爆発機能の作成
 【爆破エフェクトの用意】
  ① アセットストアからアセットの取得
  ② アセットをUnityに取り込む

 【爆破エフェクトの配置】
  ① 爆破エフェクトを敵ドローン内に配置

 【当たり判定と爆破機能の作成】
  ① 新規スクリプトの作成
  【参考】【プログラムの詳細説明:DroneExplosion】
  ② 当たり判定時の敵ドローンの動き解説
  【参考】【ゲームでの当たり判定方法】
  ③ スクリプトをオブジェクトに関連付け
  【参考】【スクリプト内のSerializedField】
  ④ スクリプトの修正(BulletController)
  【参考】【プログラムの詳細説明:BulletController】
  ⑤ ゲームを実行してテスト

第2.8章. 敵ドローンの自動生成機能の作成
 【敵ドローンのPrefabの作成】
  ① 敵ドローンの位置と向き調整
  ② 敵ドローンのPrefab化
  【参考】【Prefabとは】
  【参考】【Prefabの作成法】

 【敵ドローンの自動生成機能の作成】
  ① 新規スクリプトの作成
  【参考】【プログラムの詳細説明:DroneGenerator】
  【参考】【シーン上にゲームオブジェクトを自動連続生成】
  【参考】【シーン上にPrefabを生成する方法】
  ② スクリプトをオブジェクトに関連付け
  ③ スクリプトの修正(DroneExplosion)
  【参考】【プログラムの詳細説明:DroneExplosion】
  ④ ゲームを実行してテスト

第2.9章. UIと停止/リスタート機能の作成
 【残り時間のUI作成】
  ① 残り時間のUIの配置
  ② 新規スクリプトの作成
  【参考】【プログラムの詳細説明:GameController】
  ③ スクリプトをオブジェクトに関連付け
  ④ ゲーム実行してテスト

 【敵ドローン数のUI作成】
  ① 敵ドローン数のUIの配置
  ② スクリプトの修正(DroneGenerator)
  【参考】【プログラムの詳細説明:DroneGenerator】
  ③ ゲームを実行してテスト

 【ゲームの一時停止機能の作成】
  ① スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ② 一時停止のUIボタンの配置
  ③ スクリプトの修正(DroneController)
  【参考】【プログラムの詳細説明:DroneController】
  ④ スクリプトの修正(DroneGenerator)
  【参考】【プログラムの詳細説明:DroneGenerator】
  ⑤ アセットの既存スクリプトの修正(SimpleShoot)
  【参考】【プログラムの詳細説明:SimpleShootの一部】
  ⑥ ゲームを実行してテスト

 【リスタート機能の作成】
  ① スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ② リスタートのUIボタンの配置
  ③ ゲームを実行してテスト

第2.10章. ゲームスタート・終了機能の作成
 【ゲームクリア時の機能作成】
  ① メッセージUIの作成
  ② スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ③ スクリプトの修正(DroneGenerator)
  【参考】【プログラムの詳細説明:DroneGenerator】
  ④ ゲームを実行してテスト

 【ゲームオーバー時の機能作成】
  ① メッセージUIの作成
  ② スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ③ ゲームを実行してテスト

 【ゲームスタート時のメッセージ作成】
  ① メッセージUIの作成
  ② メッセージUIのアニメーション作成
  【参考】【AnimationとAnimator】
  ③ スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ④ ゲームを実行してテスト

第2.11章. レベル管理機能の作成
 【レベル管理用マスタの作成】
  ① スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  【参考】【構造体】
  【参考】【static変数】
  ② レベルマスタの設定(テスト用設定)

 【ゲームシステムのレベル機能を作成】
  ① レベル表示UIの作成
  ② スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ③ スクリプトの修正(DroneGenerator)
  【参考】【プログラムの詳細説明:DroneGenerator】
  ④ スクリプトの修正(DroneController)
  【参考】【プログラムの詳細説明:DroneController】
  ⑤ ゲームを実行してテスト

 【レベル変更機能の作成】
  ① スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ② レベル変更画面の作成
  ③ ゲームを実行してテスト

 【レベル最大値の保存とリセット機能の作成】
  ① スクリプトの修正(GameController)
  【参考】【プログラムの詳細説明:GameController】
  ② レベル最大値リセットボタンの作成
  ③ ゲームを実行してテスト
  ④ レベルマスタの最終設定


第3章. 対決インベーダーのAR機能の作成

第3.1章. 対決インベーダーのAR機能作成の手順
 【本ゲームのAR機能作成手順の概要】
  【参考】【Unityプロジェクトのバックアップ】

第3.2章. AR Foundation使用の準備
 【AR Foundationパッケージのインストール】
  ① 必須パッケージのインストール
  ② ターゲット依存のパッケージのインストール

 【Player Settingsの設定】
  ① Build Settingsの設定
  ② Android端末用のPlayer Settings設定
  ③ iOS端末用のPlayer Settings設定

第3.3章. 対決インベーダーのAR機能作成
 【AR Sessionオブジェクトの導入】
  ① AR Sessionオブジェクトの追加
  【参考】【AR Sessionオブジェクトとは】
  ② AR Session Originオブジェクトの追加
  【参考】【AR Session Originオブジェクトとは】

 【既存オブジェクトのAR用配置変更】
  ① AR Session Origin配下のオブジェクト移動
  ② ARカメラの設定

第3.4章. モバイルデバイスでのARテスト
 【モバイル用のビルドとインストール】
  ① Android用のビルド実行
  ② Android端末にインストール

 【モバイルデバイスでのARテスト】
  ① モバイルデバイスでのAR機能の確認
  ② モバイルデバイスでのARゲームの確認

第3.5章. 全スクリプトの解説
 【全スクリプトの機能一覧】

 【プログラムの詳細説明】
  ① BulletController
  ② DroneController
  ③ DroneExplosion
  ④ DroneGenerator
  ⑤ GameController
  ⑥ SimpleShoot の一部

Vol.7 の 予 告

著者紹介



Sponsored Link