Unity でスマフォ向けに仮想ジョイスティックをつける。

シェアする

Game with Virtual Joystick on Unity

つけてみた。といっても標準の Assets にあるやつ。楽ちん。

Sponsored Links

仮想ジョイスティックの導入方法

メニューの Assets -> Import Package -> Standard Assets (Mobile) を選択。

Standard Assets Mobile

出てきたやつとりあえず全部 Import しとく。必要なのは Standard Assets (Mobile)/Prefabs/Single Joystick だけとおもいきやそこで使ってるテクスチャーも一緒にインポートしないといけない。面倒なので全部。

Single Joystick

インポートしたら Standard Assets (Mobile)/Prefabs/Single Joystick を Hierarchy にドラッグアンドドロップすると画面に表示される。とりあえずこれでジョイスティックを使う事はできる。

このままではキャラクターは動かないので、動くようにスクリプトを修正する。

// PlayerController.js
(省略)
var joystick : Joystick;

function Start () {
	joystick = FindObjectOfType(Joystick) as Joystick;
	animation['Walk'].speed = 2.0;
}

function Update () {
	(省略)
	// PC向けの操作方法。いらないのでとりあえずコメントアウト
	//velocity = Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
	// 仮想ジョイスティッックを使う時のコード。
	velocity = Vector3(joystick.position.x, 0, joystick.position.y);
	velocity *= walkSpeed;
	(省略)
}

上記のように修正して実機を使って試したらちゃんと動くはず。

デフォルトではジョイスティックの場所が悪かったのでそのへんは適当に位置を調節したほうが良さそう。

Sponsored Link

シェアする

フォローする