Unityでゲームを作る2 オブジェクトの向きを変える

1月 2, 2020

今回は、前回https://kituneproject.com/?p=35の続きで、主人公オブジェクトの向きを変える方法を紹介します。

gameobjectのcreate emptyを選びます。

このcreate emptyは、何もない空のオブジェクトです。

この空のオブジェクト(gameobject)を前回作った主人公オブジェクトの中心に置きます。

主人公オブジェクトとカメラを空のオブジェクト(gameobject)にドラッグアンドドロップします。

前回作ったコードを空のオブジェクト(gameobject)にドラッグアンドドロップします。

次に、主人公オブジェクトの中のrigidbodyを消して、空のオブジェクトの方に全く同じように、rigidbodyを追加します。

前と同じようにAssetsの何もない所に右クリックして、createのc#scriptを選択して、

下のコードを書きます。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript1 : MonoBehaviour {
	//上のNewBehaviourScript1はコードの名前
	// Use this for initialization
	void Start () {
		
	}
	
	void Update () {
		if (Input.GetKeyDown (KeyCode.W)) {
				this.transform.rotation = Quaternion.Euler (0, 0, 0);
			}
		if (Input.GetKeyDown (KeyCode.S)) {
				this.transform.rotation = Quaternion.Euler (0, 180, 0);
			}
		if (Input.GetKeyDown (KeyCode.A)) {
			
			this.transform.rotation = Quaternion.Euler (0, 270, 0);
		}
		if (Input.GetKeyDown (KeyCode.D)) {
			this.transform.rotation = Quaternion.Euler(0, 90, 0);
		}
	}
}

保存して、空のオブジェクトではなく、主人公オブジェクトに入れます。

今回は、わかりやすいように、前に赤丸を付けました。

うまくいったら向きが変わります。