Unity2D『JOYSTICK』を実装してオブジェクトを動かす方法。その①

何度か思い出したくなるので、

メモ帳代わりに記事として残しておきます。

こんな感じに↑↑動くぞ

まずは、アセットストアにて、

unityジョイスティック

Joystick Pack ← から『Joystick Pack』をマイアセットに追加。

②Unityを起動。

③『ウィンドウ』から、『アセットストア』を開き、『Open Package Manager』をクリック。
※ちなみに『Search online』を開くと、アセットストアを開けるぞ。

④『➤Joystick Pack』をクリックし、ダウンロードしてからインポートを行う。
※ダウンロードが完了すると、ダウンロードボタンがインポートに切り替わる。

⑤インポートが完了すると、プロジェクト内に『Joystick Packというファイル』が追加される。

⑥『Joystick Pack』ファイル ➡ 『Prefabs』ファイル ➡ 『Fixed Joystick』のプレファブを、
・ヒエラルキーにて、右クリックで『UI』➡『Canvas』の子に設置して、好きな箇所に配置する。

⑦Joystickの画像を変更したい時は、先ほど追加した(ヒエラルキー内の)プレファブの『Fixed Joystick』と、子の『Handle』、インスペクターから『Image』➡ 『ソース画像』から色々あるので、自分のゲームに合ったJoystickを追加しよう。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerMove : MonoBehaviour
{
    public float joystickMoveSpeed = 5f;  //プレイヤーのスピード
    public Joystick joystick;  //インスペクターからプレファブの『Fixed Joystick』を追加。
    Vector3 joystickMoveVector;  //ジョイスティックの傾き度を取得

    // Update is called once per frame
    void Update()
    {
        joystickMoveVector = Vector3.right * joystick.Horizontal + Vector3.up * joystick.Vertical;
        if (joystickMoveVector != Vector3.zero)  //ジョイスティックを動かすと動く。
        {
        transform.Translate(joystickMoveVector * joystickMoveSpeed * Time.deltaTime, Space.World);  //ジョイスティックの傾き度で動くスピードが変わる。
        }
    }
}

・移動させたいオブジェクトに、このスクリプトをアタッチする。

・インスペクターから、先程追加した、『Fixed Joystick』のJoyStickを追加する。

・ジョイスティックの傾き度合いで、動くスピードが小さくなったり大きくなったりする。

非常に便利なツールなので、androidやiPhoneでゲームを作るなら覚えておきたい機能ですね!

メモ帳代わりに記入しているだけなのでお手柔らかに。

「こういう書き方すると良いんだけどな~」と言う方は、「コメント欄によろしくお願いしますっ!」



スポンサーリンク



スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする