【Unity5】ボールをキーボード操作で移動させる
これの続き
motojapan.hateblo.jp
motojapan.hateblo.jp
今回はスクリプトをコーディングしまする
Unityのみでは、細やかな操作やアニメーションを実装できないので、
C#でコーディングしまする
簡単なコードで動きますね
①Script用フォルダを作成
Assets->Create->Folderでフォルダ作成
(フォルダ名は適当にScripts)
Scriptsを左クリックでCreate -> C# Script
(ファイル名は適当にball_controller)
ball_controllerをクリックすると何やら右側にCode Previewが映っています
②Scriptを編集する
ball_controllerをダブルクリックするとVisual Studioを立ち上がります
(Editorは環境依存です)
次のTemplateが出現しますね
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ball_controller : MonoBehaviour { // Use this for initialization //最初に一度だけ呼ばれる処理 void Start () { } // Update is called once per frame //毎フレーム呼ばれる処理 void Update () { } }
なのでUpdateを次のように編集してみる
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ball_controller : MonoBehaviour { //ここの宣言が後でUnityでいじれる設定となる public Vector3 ball_position = new Vector3(0.0f, 0.0f, 0.0f); // Use this for initialization //最初に一度だけ呼ばれる処理 void Start () { } // Update is called once per frame //毎フレーム呼ばれる処理 void Update() { //[W]クリック時の処理 if (Input.GetKey(KeyCode.W)) { transform.position += ball_position; } //[Q]クリック時の処理 if (Input.GetKey(KeyCode.Q)) { transform.position -= ball_position; } } }
③Scriptをボールに適用する
ボールのInspectorからAddComponentで②で編集したball_controllerを選択
ball_controllerが追加されたので、
Ball_positionのZのみを1にしてみる
これで「W」をクリックすると、ボールが奥に移動し、「Q」をクリックすると手前に移動する(はずだ)
④チェック
例によって再生ボタンをクリック
これが
Wを押すとこうなって
斜めの丘を転げる
Have a nice GW !!