マウスカーソルに向かって、移動するオブジェクトを作成してみましょう。
カーソルのほうへ向きを変え、ゆっくり追いかけていきます。
関連記事:
ナビメッシュエージェントを使った追尾機能
3D空間でプレーヤーを追いかけるオブジェクト
マウスカーソルについていくオブジェクト
空間の中でクリックした位置へ行く
マウスカーソルを重ねると実行
マウスカーソルの方へ向ける
ターゲットに向かって直線的に進む方法
プレーヤーの上部で一緒に動くオブジェクト
マウスカーソルに向かって動く
Cubeオブジェクトを作成します。
CubeMove.csを作成して、Cubeに追加します。
CubeMove.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeMove : MonoBehaviour { private Vector3 mouse; private Vector3 target; public float speed; void Start() { speed = 0.1f; } void Update () { mouse = Input.mousePosition; target = Camera.main.ScreenToWorldPoint(new Vector3(mouse.x, mouse.y, 10)); transform.LookAt(target); transform.position += transform.forward * speed; } } |
プレイして、カーソルを動かしてみましょう。
カーソルに向かって追いかけるように動いていきます。
マウスの位置を把握するため、スクリーン座標からワールド座標へ変換し、Z座標は10に固定しています。
関連記事:
ナビメッシュエージェントを使った追尾機能
3D空間でプレーヤーを追いかけるオブジェクト
マウスカーソルについていくオブジェクト
空間の中でクリックした位置へ行く
マウスカーソルを重ねると実行
マウスカーソルの方へ向ける
ターゲットに向かって直線的に進む方法
プレーヤーの上部で一緒に動くオブジェクト