パソコンを新調したので、以前のプロジェクトを移動しようとしたのですが、うまくいきませんでした。せっかくなので、これまでの記事を頼りに、少しショートカットしながら復元することにしました。
(プロジェクトの移動についてはそのうちに再チャレンジしたいと思います)
Asset Store にある Tiny RPG を使用してキャラクターの動作設定をしていきます。
Tiny RPG - Forest | 2D Characters | Unity Asset Store
Asset のインポート (#4抜粋)
Asset のインポートは、第4回を基にしています。
Unity学習#4 (Unity 2019.4.1f1) マップを創る - tomo_manaのブログ
Asset を購入する(省略)
Asset の購入からダウンロードまでは省略します。
購入した Asset をインポートする
Unity のメインウィンドウ:
(1) Window
> Package Manager
Package Managerウィンドウ:
(2) [All Packages
] → [My Assets
] に切り替え
(3) ログインが必要:Gmail IDなどでログイン
(4) インストールしたパッケージを選択(今回は Tiny RPG - Forest
を選択)
(5) ウィンドウ右下 Import
をクリック
Import Unity Packageウィンドウ:
(6) ウィンドウ右下 Import
をクリック
パッケージのインストールが完了すると、Assets
フォルダの下に Tiny RPG Forest
が追加されました。
キャラクターの配置 (#2抜粋)
Sprite を追加する方法は、第2回を基にしています。
Unity学習#2 (Unity 2019.4.1f1) 画像を表示する - tomo_manaのブログ
オブジェクトの作成 (Sprite)
(1) Hierarchyウィンドウ:[+▼
] をクリック
(2) 2D Object
> Sprite
を選択(New Sprite が作成される)
(3) Hierarchyウィンドウ:先ほど作成したゲームオブジェクトを選択
(4) Inspectorウィンドウ:名前欄(New Spriteと入力された欄)を編集する
(今回は Player という名前にする)
画像をリンクさせる
(5) Projectウィンドウから、キャラクター用に使用する画像の保存フォルダまで移動する
(今回はTiny RPG Forest を使用したため、キャラクターの正面立ち絵は以下のフォルダ:
Assets > Tiny RPG Forest > Artwork > sprites > hero > idle > hero-idle-front > hero-idle-front.png)
(6) Inspectorウィンドウ に 先ほど作成したゲームオブジェクトの情報が表示された状態で、(5)の画像を Inspector の Sprite Renderer
> Sprite
の欄にドラッグ&ドロップ
ただしこのままだと表示される画像が小さいので、画像を表示する大きさを変更します。
画像の設定を変更する
(1) Sprite に割り付ける画像をProjectウィンドウ上で選択すると、Inspectorウィンドウに画像の情報が表示されます。
(2) Sprite Mode
欄内の Pixels Per Unit
欄を 100 → 16 にして、変更を確定するため Projectウィンドウ内の欄内の空いているスペースをクリック
(3) 以下の警告が出た場合は、Apply
を選択
画像の大きさが変更されました。
Pixels Per Unit の説明は以下のサイトも参考にしました。
さぁ、UnityのTilemapを始めよう! 3/8 ~Spriteの設定編~ - Qiita
キャラクターを動かす (#3, #5抜粋)
キャラクターを最低限動かすためのコードは、第3回、第5回を基にしています。
Unity学習#3 (Unity 2019.4.1f1) キャラクターを動かす - tomo_manaのブログ
Unity学習#5 (Unity 2019.4.1f1) 障害物と当たり判定 - tomo_manaのブログ
InputSystem
の設定(第12回)が少し大変なので、最初はInputManager
を使って動かします。
C#スクリプトの作成
(1) Projectウィンドウ:Assets
フォルダで右クリック
(2) NewBehaviourScript
という名前のスクリプトが表示されて、名前欄が選択された状態になっているため、Enterキー
を押す前にスクリプト名を入力します。今回は PlayerControl.cs
とします。(最初のEnterでスクリプトのクラス名が確定します。ファイル名とクラス名は後から変更できますが、ファイル名またはクラス名を変更したときは必ずもう片方もセットで変更します)
(3) 作成したスクリプトファイルをダブルクリックで開き、Update()
関数内を以下のように変更します。
PlayerControl.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerControl : MonoBehaviour { // キー入力 private Vector3 input = Vector2.zero; // 移動 private float speed = 0.1f; // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { input.x = Input.GetAxis("Horizontal"); input.y = Input.GetAxis("Vertical"); if (input == Vector3.zero){ return; } gameObject.transform.position = gameObject.transform.position + input * speed; } }
動作確認 (#2抜粋)
Gameウィンドウ で動作確認します。
再生ボタン
を押した後、キーボードの上下左右キー
でキャラクターが動くか確認します。
ここまでの作業が終了したら、Ctrl+S
でプロジェクトを保存します。
(以上)