プログラミング”ド素人”のUnity奮闘記

プログラミングが全く分からない超絶初心者がUnityでゲームを作るために日々奮闘している所です

【Unity】Input.GetKeyによる方向キーでの動かし方

初心者向けのサイト様をまたまた巡りまして、2Dゲーム製作を開始しました。

『おもちゃラボ』様という、はてなブログの記事を参照させていただきながら取り掛かりました。

nn-hokuson.hatenablog.com

 

今回学んだのは、Input.GetKeyを用いた方向キー入力によるプレイヤーの移動の方法です。

 

 

実際に記入したスクリプト

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

public class RocketController : MonoBehaviour {

    // Use this for initialization
    void Start () {
        
    }
    
    // Update is called once per frame
    void Update ()
    {
        if (Input.GetKey (KeyCode.LeftArrow)) {
            transform.Translate (-0.1f, 0, 0);
        }
            if (Input.GetKey (KeyCode.RightArrow)) {
                transform.Translate (0.1f, 0, 0);
            }
        }
    }

 

 

if(Input.GetKey(KeyCode.LeftArrow)){

  transform.Translate(-0.1f,0,0);

→方向キー"左"を押している間だけ、-0.1の距離ずつX方向へ進む

 "LeftArrow"が方向キー"左"を意味する。

 

if(Input.GetKey(KeyCode.RightArrow)){

  transform.Translate(0.1f,0,0);

→方向キー"右"を押している間だけ、0.1の距離ずつX方向へ進む

 "RightArrow"が方向キー"右"を意味する。

 

キーを押して何かアクションを起こす際は、

Input.GetKeyを使う。

物を動かしたい際は、

transform.Translate(x方向の移動量,y方向の移動量,z方向の移動量);

キー入力によって、プレイヤーを動かしたい際には、上記を組み合わせて使用する。