X方向のオブジェクト間の移動量(距離)を、float型で取得できるように、スクリプトを作成しましょう。
Cubeを操作して、SphereとのX軸だけの距離を取得し、コンソールに表示します。
Vector3.magnitudeを使えば、Vector3型をfloat型で取得できます。
関連記事:
他のコライダーとの距離を取得
一定距離から外れたら実行する
一定の距離に達したところで削除する
他のコライダーとの距離を取得
ドラッグの距離をパワー数値に変換する
Rayが当たった位置までの距離
距離に応じて2つ以上の条件を設定
発射したボールの飛距離を算出する
X軸だけの距離を算出する
SphereとCubeを作成し、X方向の距離を空けます。
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 24 25 26 27 28 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeMove : MonoBehaviour { private float speed = 3.0f; public GameObject sphere; private Vector3 movement; private float amountX; void Update() { float moveX = Input.GetAxis("Horizontal") * Time.deltaTime * speed; float moveZ = Input.GetAxis("Vertical") * Time.deltaTime * speed; transform.position = new Vector3 ( transform.position.x + moveX, transform.position.y, transform.position.z + moveZ ); movement.x = this.transform.position.x - sphere.transform.position.x; amountX = movement.magnitude; Debug.Log(amountX); } } |
スフィアのフィールドに、Sphereを入れます。
ゲームプレイして、Cubeを動かしましょう。
Sphereに対してX軸だけの移動量が、コンソールに表示されています。
関連記事:
他のコライダーとの距離を取得
一定距離から外れたら実行する
一定の距離に達したところで削除する
他のコライダーとの距離を取得
ドラッグの距離をパワー数値に変換する
Rayが当たった位置までの距離
距離に応じて2つ以上の条件を設定
発射したボールの飛距離を算出する