ゲームプレイ中、ずっとプレーヤーのいる方へ向きを変えるオブジェクトを作ってみましょう。
今回の例では、Sphereをプレーヤーとして操作。
Cubeはプレーヤーのほうを見続けながら回転します。
関連記事:
自機狙い(プレーヤーに向けた)発射 -3Dゲーム
マウスカーソルの方へ向ける
3D空間でプレーヤーを追いかけるオブジェクト
空間の中でクリックした位置へ行く
ターゲットに向かってオブジェクトをぶつける
2つの座標(目的地)へ行く
ターゲットを照準に向きを変える
SphereとCubeを作成し、少し距離をとります。
まずはCubeからスクリプトを作成しましょう。
CubeRotate.csを作成し、Cubeに追加します。
CubeRotate.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeRotate : MonoBehaviour { [SerializeField] GameObject player; void Update() { transform.LookAt(player.transform); } } |
Playerのフィールドに、Sphereオブジェクトを入れましょう。
これで方向の照準として、Sphereを設定できました。
プレーヤーの動き
続いて、プレーヤー(Sphere)を、十字キーで動かせるようにします。
SphereMove.csを作成し、Sphereに追加します。
SphereMove.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class SphereMove : MonoBehaviour { void Update() { float dx = Input.GetAxis("Horizontal") * Time.deltaTime * 3.0f; float dz = Input.GetAxis("Vertical") * Time.deltaTime * 3.0f; transform.position = new Vector3 ( transform.position.x + dx, 0, transform.position.z + dz ); } } |
ゲームプレイして、Sphere(プレーヤー)を操作してみましょう。
Cubeは、Sphereのほうを見ながら、ずっと向きを変え続けます。
関連記事:
自機狙い(プレーヤーに向けた)発射 -3Dゲーム
マウスカーソルの方へ向ける
3D空間でプレーヤーを追いかけるオブジェクト
空間の中でクリックした位置へ行く
ターゲットに向かってオブジェクトをぶつける
2つの座標(目的地)へ行く