[Unity5][Android][iOS]バーチャルパッドを実装する
Unity5でスマートフォンゲーム向けにバーチャルパッドを実装する方法を紹介します。
目標
今回実装するバーチャルパッドは下図のようなものです。
画像左下のパッドへの入力値を表示するところまでを行います。
手順
- CrossPlatformInputをインポートする
- Prefabを設置する
- パッドからの入力を受け取るスクリプトを記述する
1.CrossplatformInputをインポートする
上部メニューバーから、[Assets]->[Import Package]->[CrossPlatformInput]の順に選択し、パッケージをインポートします。
2.Prefabを設置する
Projectウィンドウから、[Standard Assets]->[CrossPlatformInput]->[Prefabs]->[MobileSingleStickControl]を選びシーン内に設置します。
するとバーチャルパッドとついでにボタンが表示されます。
注意:このときBuild SettingでPlatformがAndroidもしくはiOSに設定されていないと、パッドは表示されません!(筆者はこれを忘れていてめっちゃつまづいた)
この時点でシーンを実行すると、パッドをマウス左クリックでホールドすることでぐりぐり動かせるようになります。
3.パッドからの入力を受け取るスクリプトを記述する
最後にスクリプトでパッドへの入力値を確認してみます。
冒頭に、using UnityStandardAssets.CrossPlatformInput;
を記述することで
CrossPlatformInputManager.GetAxisRaw
によりパッドへの入力値を受け取れます。
using UnityEngine;
using System.Collections;
using UnityStandardAssets.CrossPlatformInput; //←追加
public class Sample : MonoBehaviour {
// Update is called once per frame
void Update () {
// 水平方向への入力( -1.0 ~ 1.0 )
Debug.Log( "Horizontal : " + CrossPlatformInputManager.GetAxisRaw( "Horizontal" ) );
// 垂直方向への入力( -1.0 ~ 1.0 )
Debug.Log( "Vertical : " + CrossPlatformInputManager.GetAxisRaw( "Vertical" ) );
}
}
実行してみると、Console画面にパッドへの入力値が表示されているのが分かります。
あとはこの値をキャラクターの移動などに用いるだけですね。
Author And Source
この問題について([Unity5][Android][iOS]バーチャルパッドを実装する), 我々は、より多くの情報をここで見つけました https://qiita.com/hykw_r/items/ceeb975b410a03faf186著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .