Unityちゃんを動かしてみた Part2
Unityちゃんを動かしてみた。
今回はジョイスティック、ボタンを使用。
▼参考になったサイトtsubakit1.hateblo.jp
indie-du.hatenablog.com
ややこしかったのが、
・Rect Transform
・ボタンの追加処理
「Rect Transform」については、参考サイトがわかりやすく書いています。
「ボタンの追加処理」について
元々JSで、スペースキーを押すとジャンプするような処理を書いていました。
(以下のような。)
#pragma strict function Start () { } function Update () { var myAnimator=GetComponent(Animator); if (Input.GetKey(KeyCode.Space)){ myAnimator.SetBool("Jump",true); } var state:AnimatorStateInfo=myAnimator.GetCurrentAnimatorStateInfo(0); if(state.IsName("Locomotion.Jump")){ myAnimator.SetBool("Jump",false); } }
んで、
そのままJSでスマホ用にジョイスティックを使ってキャラクターを動かしたいと思い、
参考のサイトを探して見たんですが、基本C#を使ったものしか見つかりません。
これで、C#を使ってコードを書いていけばよかったんですが、
「CrossPlatformInput」をJSで書こうとしてつまづいた。
結局、C#でコードを書いたことがなかったのですがなんとかできました。
using UnityEngine; using UnityEngine.EventSystems; using UnitySampleAssets.CrossPlatformInput; public class Jump : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { Animator myAnimator = GetComponent<Animator>(); if (CrossPlatformInputManager.GetButtonDown("Jump")){ myAnimator.SetBool("Jump",true); } AnimatorStateInfo state = myAnimator.GetCurrentAnimatorStateInfo(0); if(state.IsName("Locomotion.Jump")){ myAnimator.SetBool("Jump",false); } } }
実機で確認してできました。
ジョイスティックがなんか
変なので、参考サイトを見ながら、
「Rect Transform」を理解していく。