【Unityアセット】『TopDownEngine』基本の使い方

【Unityアセット】TopDownEngineのデモシーンの画像

見下ろし型アクションゲーム制作テンプレート「TopDownEngine」の基本の使い方。
実際にゲームを作りながら把握した、導入~基本的な使い方。

導入

UnityHub -> 新規作成 -> テンプレート -> 3D

として作成したプロジェクトに、TopDownEngineをインポート。
導入時に、TileMap等の2D用のパッケージもインポートされる模様。

ProjectSettingsが変更されるので、出来るだけ新規プロジェクトへのインポートを推奨。

エディタの2D/3Dモードは、3Dモードのまま変更されない。
3Dモード時の仕様は以下から。

概要

コンポーネント指向

機能をパーツ毎に分けて、必要に応じてアタッチしている。
エディタのインスペクターから細部まで設定出来る。

パーツの基本クラスの初期化時に、GetComponentInParent等で、同一オブジェクトにアタッチされた他コンポーネントの参照を取得しまくっている。

シングルトン(○○Manager系)

ちゃんとしたシングルトン。

何故かInputManagerだけ、基本クラスの初期化時にFindObjectsOfTypeで変数に参照を保存している。
(「InputManager.Instance」でも取得可能)。

基本的な使い方

デモゲームをテンプレートとする

デモゲームをテンプレートとして、各種リソースや、プレハブを差し替えて行く。
(音声ファイルは転用禁止なので注意)。

要素の追加時は、基本クラスを継承

要素を追加する時は、同種スクリプトの基本クラスを継承。
同種スクリプトを参考に、ルールを踏まえつつ、クラスを構成。

基本クラスの初期化時に、主な関連クラスの参照は取得されている

派生クラスの場合、基本クラスの初期化タイミングで、主要な関連クラスへの参照を保持している。
(CharacterAbilityならばCharacterへの参照等)。
基本クラスの変数だけでも、ざっと目を通しておいた方が良い。

○○Manager系は、シングルトンなので「GameManager.Instance」として何時でも使用出来る。
○○Manager系の初期化タイミングで、他○○Manager系を呼び出す場合は、スクリプトの実行順序に注意しなければいけない。

Android向けにビルドする時の注意点

初期設定のままビルドしようとしてもエラーが出る。

「Minimum API Level」が高いので注意

デフォルト設定では、Minimum API Levelが「API Level 29」と高めに設定されている。
使用するスマホが古い物だと、「パッケージの解析中に問題が発生しました。」と出てapkファイルからインストール出来ない。

解決法

上部メニュー -> Project Settings -> Player -> Other Settings -> Identificationの項のMinimum API Levelを適度に下げておく。

「Keystore」(電子署名)の設定に注意

Keystoreにパスワードを入力せずにビルドすると「Can not sign the application」が出てビルド不可能。

解決法

  1. 上部メニュー -> Edit -> Project Settings…でProject Settingsを開く。
  2. Player -> Publishing Settings -> Custom Keystoreを無効化する。

タイトルとURLをコピーしました