Unity超入門
やさしくわかるゲーム開発

書籍の概要

この本の概要

本書はUnity 6ではじめてゲームを作成してみたい人を対象とした入門書です。nityの基本操作を学んだあと,C#を利用しないで作成するゲーム(玉転がしゲーム),C#を利用して作成するゲーム(サバイバルゲーム),判定のある本格的なゲーム(鬼ごっこゲーム),対戦が楽しめるゲームの4つのゲームの作成を通じて,「アセットストアの使い方」「プレハブの利用方法」「AI Navigationの活用方法」「Input Systemの活用方法」などUnityの基本が一通りわかります。

こんな方におすすめ

  • Unity 6で初めてゲーム開発をしてみたい人

本書のサンプル

本書の一部ページを,PDFで確認することができます。

目次

Chapter1 Unityをはじめよう

1-1 Unityとは

  • 1-1-1 ゲームエンジンとは?
  • 1-1-2 Unityのプラン

1-2 UnityHubとは

  • 1-2-1 UnityHubの役割
  • 1-2-2 UnityHubのダウンロード
  • 1-2-3 UnityHubのインストール(Mac)
  • 1-2-4 UnityHubのインストール(Windows)
  • 1-2-5 Unity IDの作成

1-3 Unity開発の環境を作ろう

  • 1-3-1 Unity6のインストール
  • 1-3-2 Unity Hubの日本語化
  • 1-3-3 Unityのインストール(Mac)
  • 1-3-4 Unityのインストール(Windows)
  • 1-3-5 Unityのライセンスの追加
  • 1-3-6 Unityの起動
  • 1-3-7 サンプルプロジェクトのインポート

1-4 Unityのインターフェースを理解しよう

  • 1-4-1 「Project」(プロジェクト)ウィンドウ
  • 1-4-2 「Game」(ゲーム)ビュー
  • 1-4-3 「Scene」(シーン)ビュー
  • 1-4-4 「Hierarchy」(ヒエラルキー)ウィンドウ
  • 1-4-5 「Inspector」(インスペクター)ウィンドウ
  • 1-4-6 「Console」(コンソール)ウィンドウ
  • 1-4-7 プロジェクトのセーブ
  • 1-4-8 プロジェクトのロード

Chapter2 玉転がしゲームを作ろう

2-1 開発を始めよう

  • 2-1-1 プロジェクトの作成
  • 2-1-2 シーンの保存
  • 2-1-3 Unityの座標系
  • 2-1-4 ワールド座標系とローカル座標系
  • 2-1-5 回転方向

2-2 床を作ろう

  • 2-2-1 Cubeの作成
  • 2-2-2 Cubeの名前変更
  • 2-2-3 「Game」ビューと「Inspector」ウィンドウでの"Cube"の表示
  • 2-2-4 「Inspector」ウィンドウでの操作
  • 2-2-5 Floorの位置や形状の変更

2-3 スロープを作ろう

  • 2-3-1 スロープの作成
  • 2-3-2 ゲームオブジェクトの複製

2-4 プレハブを作成しよう

  • 2-4-1 プレハブとは
  • 2-4-2 "Slope1"のプレハブ化
  • 2-4-3 "Slope2"のプレハブ化

2-5 スロープを繋げて道を作ろう

  • 2-5-1 スロープの配置
  • 2-5-2 色を付ける
  • 2-5-3 メインカメラの調整

2-6 玉を作ろう

  • 2-6-1 玉の作成
  • 2-6-2 玉の配置とスケール
  • 2-6-3 玉に物理挙動の設定

2-7 テクスチャを貼ろう

  • 2-7-1 アセットストアからマテリアルとテクスチャの入手
  • 2-7-2 Unityへマテリアルとテクスチャのインポート
  • 2-7-3 マテリアルの設定 75

2-8 アセットを追加しよう

  • 2-8-1 「Creator Kit: Puzzle」アセットの入手
  • 2-8-2 プレハブの配置
  • 2-8-3 インタラクトプレハブの配置

Chapter3 サバイバルゲームを作ろう

3-1 プロジェクトを作成しよう

  • 3-1-1 今回作成するゲームの概要
  • 3-1-2 プロジェクトとシーンの作成

3-2 床とボールを作成しよう

  • 3-2-1 床の作成
  • 3-2-2 ボールの作成
  • 3-2-3 ボールの落下設定
  • 3-2-4 物理マテリアルの設定

3-3 ボールを操作しよう

  • 3-3-1 スクリプトの設定(ボール)
  • 3-3-2 ボールの物理挙動
  • 3-3-3 ボールの操作
  • 3-3-4 ボールのジャンプ
  • 3-3-5 「Inspector」ウィンドウとの連携

3-4 床を一定間隔で生成しよう

  • 3-4-1 床の自動生成
  • 3-4-2 床の生成方向の制限
  • 3-4-3 時間による床の消去
  • 3-4-4 段差のある床の生成
  • 3-4-5 カメラの追従(ボール)
  • 3-4-6 接地判定

3-5 ゴールを作成しよう

  • 3-5-1 ゴールの床のプレハブ作成
  • 3-5-2 ゴールの床の生成
  • 3-5-3 ゴールの処理
  • 3-5-4 ゲームオーバーの作成

3-6 アセットを追加しよう

  • 3-6-1 「Unity Learn | Creator Kit: FPS | URP」アセットの入手
  • 3-6-2 背景のプレハブの配置
  • 3-6-3 床とボールにマテリアルのセット
  • 3-6-4 BGMの再生

Chapter4 鬼ごっこゲームを作ろう

4-1 プロジェクトを作成しよう

  • 4-1-1 プロジェクトの作成
  • 4-1-2 アセットの準備
  • 4-1-3 アセットのインポート

4-2 敵を作ろう

  • 4-2-1 敵のプレハブの作成
  • 4-2-2 プレイヤーの機能を削除
  • 4-2-3 敵のLayerの追加
  • 4-2-4 敵のタグの追加
  • 4-2-5 敵にコライダーと物理の追加
  • 4-2-6 Rigidbodyコンポーネントの追加
  • 4-2-7 プレイヤーを追跡する機能の追加
  • 4-2-8 歩ける場所の作成
  • 4-2-9 敵のスクリプトの作成
  • 4-2-10 敵のアニメーターコントローラーの作成
  • 4-2-11 アニメーターの設定
  • 4-2-12 移動速度をスクリプトから設定
  • 4-2-13 アニメーションの調整

4-3 アイテムを作成しよう

  • 4-3-1 アイテムのゲームオブジェクトの作成
  • 4-3-2 アイテムのスクリプトの作成

4-4 ゲームクリアを作成しよう

  • 4-4-1 ゲームマネージャーの作成
  • 4-4-2 アイテムの登録と解除
  • 4-4-3 ゴール地点の作成
  • 4-4-4 ゴールのスクリプトの作成
  • 4-4-5 ゴールのUIの作成
  • 4-4-6 ゴールしたときのUIの表示
  • 4-4-7 ゴールしたときに敵を消す

4-5 敵との接触を考えよう

  • 4-5-1 敵側の接触判定の作成
  • 4-5-2 プレイヤー側の接触判定の作成
  • 4-5-3 ゲームオーバー時のプレイヤーと敵の挙動
  • 4-5-4 "GAME OVER"の表示

4-6 アセットを活用しよう

  • 4-6-1 「Adventure Game Environment Pack | URP」アセットの入手
  • 4-6-2 背景アセットの追加

Chapter5 二人対戦ゲームを作ろう

5-1 プロジェクトを作成しよう

  • 5-1-1 新規プロジェクトの作成

5-2 プレイヤーを作成しよう

  • 5-2-1 入力設定の作成
  • 5-2-2 アセットのインポート
  • 5-2-3 プレイヤーのゲームオブジェクトの作成
  • 5-2-4 プレイヤーのスクリプトの作成
  • 5-2-5 スクリーン周囲に壁を配置
  • 5-2-6 マルチプレイヤーの操作
  • 5-2-7 プレイヤーの向きの設定

5-3 弾を発射しよう

  • 5-3-1 弾のプレハブの作成
  • 5-3-2 弾の発射の入力設定
  • 5-3-3 弾の発射のスクリプトの作成
  • 5-3-4 弾との接触判定

5-4 スコアを表示しよう

  • 5-4-1 スコアの表示

5-5 プレイヤーを向かい合わせよう

  • 5-5-1 スクリーン座標とワールド座標
  • 5-5-2 プレイヤーの出現座標と回転角の設定

5-6 弾の発射間隔を設けよう

  • 5-6-1 連射の制限

5-7 プレイヤーの画像を変更しよう

  • 5-7-1 スプライト画像の変更
  • 5-7-2 噴射炎の追加
  • 5-7-3 背景画像の設定

Appendix デバッグの方法とサンプルファイルの使い方

A-1 デバッグの方法

A-2 サンプルファイルの使い方

著者プロフィール

福島光輝(ふくしまみつてる)

カプコン,コナミ,スクウェア・エニックス,DeNA で多くのゲームを開発。ファミコン時代からゲーム開発に関わり,現在もエンジニアとしてアプリやゲームの開発を行っている。また自身が設立した会社では教育に力を入れており,専門学校の講師としてゲーム制作を教えている。