Unityに関連する記事です

設計に基づいて実装していく手順を考える


 設計については検討しましたので、次は、それをどの順番で、そのように実装していくかを考えていきます。
また詳細な仕様についても一緒に考えていきます。

 ゲームシーンが複数ある場合には、それらのシーンごとに実装していく順番を考えましょう。

 重要なことは、手順通りに進めて実装を行うことではなく、処理の内容をしっかりと理解をしたうえで、この教材を活用できているか、という部分です。

 教材の内容通りに進めていければエラーは出たとしても実装を行うことはできます。
ですが、その実装内容を振り返って、自分の技術として覚えることが出来るかどうかは、処理の理解度によります。

 そのため、もしも実装する内容についてわからない部分があったり、実装を進めていく中で難しい部分がある場合には
しっかりと Unity の知識を深めてから再度挑戦していただくことをお勧めします。まったく問題ありません。

<基礎編>


 基礎編はすべて Main シーンで実装を行っていきます。


<ゲームのベース部分を作成>


手順1 −Main シーンを作成−
 1.新しいプロジェクトを作成する
 2.ゲームシーン(Main)を作成する



手順2 ーアセットのインポートー
 3.アセットを Unity Asset Store よりダウンロードしてインポートする



手順3 ーTileMap 用の画像の準備ー
 4.TileMap で利用する画像ファイルを Unity にインポートする
 5.画像ファイルの設定を行い、Unity にて利用できる状態にする



手順4 −Tile Pallete と TileMap の作成−
 6.Tile Pallete の作成
 7.TileMap の作成


<キャラの作成と設置>


手順5 −防衛用のキャラの作成−
 8.防衛用のキャラのゲームオブジェクトを作成する



手順6 −タイルのタップ感知制御の実装−
 9.タップしたタイルの位置にキャラを生成する
10.タップした際に、配置可能なタイルの位置にのみキャラを生成する


<敵キャラの作成と経路に沿った自動移動機能>


手順7 −敵キャラの作成と移動経路の作成−
11.敵キャラのゲームオブジェクトを作成する
12.PathData スクリプトを作成し、敵キャラの移動経路を作成・管理する



手順8 −敵キャラの移動処理の実装−
13.EnemyController スクリプトを作成し、敵キャラを PathData スクリプトで指定した経路に沿って移動させる



手順9 −敵キャラの移動方向と移動アニメの同期処理の実装−
14.敵キャラの移動アニメを複数作成する
15.Animator ビューにてステートの遷移の設定を行う



手順10 −敵キャラの移動と移動アニメの同期処理の実装−
16.EnemyController スクリプトを修正して、敵キャラの移動している方向を取得し、その後、移動アニメと同期させる処理を実装する
17.EnemyController スクリプトのリファクタリングを行い、処理を簡潔化する


<敵キャラの迎撃機能>


手順11 −味方キャラの攻撃範囲の設定と敵キャラの破壊処理の実装−
18.Chara ゲームオブジェクトを修正する
19.CharaController スクリプトの修正を行い、攻撃範囲内に侵入した敵キャラを破壊する処理を実装する



手順12 ー味方キャラの攻撃処理と敵キャラのダメージ処理の実装ー
20.CharaController スクリプトの修正を行い、攻撃範囲内に侵入した敵キャラに一定時間ごとに攻撃する処理と、敵キャラがいなくなった場合に攻撃を停止する処理を実装する
21.EnemyController スクリプトの修正を行い、攻撃範囲内に侵入した敵キャラにダメージを与えて破壊する処理を実装する


<敵キャラと移動経路の自動生成>


手順13 ー敵キャラの自動生成処理の実装ー
22.敵の自動生成処理を1つのクラスにて管理・生成までの処理を実装する
23.処理の内容を管理クラスと生成クラスに分けて、自動生成の処理を実装する



手順14 ー敵キャラの経路表示の自動生成処理の実装ー
24.経路用の PathLine ゲームオブジェクトを作成する
25.経路に合わせて自動的に PathLine ゲームオブジェクトを作成する処理を実装する



手順15 ー異なる生成地点での敵キャラの自動生成処理の実装ー
26.複数の PathTranSet ゲームオブジェクトを作成する
27.EnemyGenerator スクリプトを修正し、複数の PathTranSet の情報をゲーム内に運用できるようにする


<自分で処理を考えてロジックを組み立てる>


手順16 ーロジックの学習,肇好リプタブル・オブジェクトの作成ー
28.防衛拠点用のゲームオブジェクトを作成し、仕様と運用のロジックを考えて実装する
29.防衛用の味方キャラのデータベースを作成し、仕様と運用のロジックを考えて実装する



手順17 ーロジックの学習◆
30.味方キャラに攻撃回数の機能と、指定した攻撃回数に達したら破壊するという仕様と運用のロジックを考えて実装する
31.敵キャラが攻撃を受けた際に一時移動を停止し、その後移動を再開するという仕様と運用のロジックを考えて実装する


<ポップアップの作成と処理の連動>


手順18 −キャラ配置用のポップアップの作成−
32.キャラ配置用のポップアップ・ゲームオブジェクトとして PlacementCharaSelectPopUp を作成する



手順19 −PlacementCharaSelectPopUp ゲームオブジェクトの生成処理の実装−
33.PlacementCharaSelectPopUp スクリプトを作成する
34.CharaGenerator スクリプトと GameManager スクリプトを修正する



手順20 −キャラ選択用のボタン型ゲームオブジェクトの作成−
35.キャラ選択用のボタン型ゲームオブジェクトとして SelectCharaDetail を作成する
36.SelectCharaDetail スクリプトを作成する



手順21 −キャラ選択用のボタン型ゲームオブジェクトの生成とポップアップ内の表示切り替え処理の実装−
37.DataBaseManager スクリプトを作成し、CharaDataSO スクリプタブル・オブジェクトを利用できる状態にする
38.PlacementCharaSelectPopUp スクリプトと CharaGenerator スクリプトを修正し、DataBaseManager スクリプトからスクリプタブル・オブジェクトの情報を利用して SelectCharaDetail ゲームオブジェクトを設定する



手順22 −ポップアップ内で選択しているキャラの生成処理の実装−
39.PlacementCharaSelectPopUp スクリプトと CharaGenerator スクリプトを修正し、選択しているキャラをタイルマップ上に生成して配置する処理を実装する
40.DataDaseManager スクリプトと CharaController スクリプトを修正し、配置用に選択したキャラの情報を設定する処理を実装する


<アニメーションの自動設定機能の実装>


手順23 −配置したキャラのアニメを自動設定する処理の実装−
41.CharaController スクリプトを修正し、配置したキャラに合わせたアニメーションを再生する機能を実装する


<ゲームの進行管理に関する機能の実装>


手順24 −ゲームの進行管理の制御機能の実装 
42.GameState の作成し、GameManager と CharaGenerator を修正して、GameState の運用を行ってゲームの進行管理をする機能を追加する



手順25 −ゲームの進行管理の制御機能の実装◆
43.GameState を利用し、GameManager と EnemyGenerator と CharaGenerator を修正して、敵の制御(生成と移動)機能を追加する



手順26 −ゲームのクリア条件と判定機能の実装−
44.ゲームのクリア条件を元にクリア判定を実装する



手順27 −カレンシー機能の実装−
45.GameData スクリプトと UIManager スクリプトを作成する。Canvas 内にカレンシー表示用のゲームオブジェクトを配置する
46.GameManager スクリプトを修正し、時間の経過に合わせてカレンシーが加算される機能を実装する



手順28 −カレンシーを活用したコスト支払い機能の実装−
47.複数のスクリプトを修正して、コストの支払い機能とカレンシーの再加算機能を実装する



手順29 −ゲームの進行状態を活用した配置キャラの制御機能の実装−
48.ゲームの進行状態を活用して配置キャラの制御を実装する



手順30 −実装全体の振り返り−
49.設計について考える
50.実装した処理の内容を読み返して理解を深める



 以上のような実装工程を行います。

 => 次は 手順1 −Main シーンを作成− です。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu



技術/知識(実装例)

2Dおはじきゲーム(発展編)

2D強制横スクロールアクション(発展編)

3Dダイビングアクション(発展編)

2Dタップシューティング(拡張編)

レースゲーム(抜粋)

2D放置ゲーム(発展編)

3Dレールガンシューティング(応用編)

3D脱出ゲーム(抜粋)

2Dリアルタイムストラテジー

2Dトップビューアドベンチャー(宴アセット使用)

3Dタップアクション(NavMeshAgent 使用)

2Dトップビューアクション(カエルの為に〜、ボコスカウォーズ風)

VideoPlayer イベント連動の実装例

VideoPlayer リスト内からムービー再生の実装例(発展)

AR 画像付きオブジェクト生成の実装例

AR リスト内から生成の実装例(発展)

private



このサイト内の作品はユニティちゃんライセンス条項の元に提供されています。

管理人/副管理人のみ編集できます