Capsule(カプセル)は標準で用意されているオブジェクトですが、デフォルトでは縦向きなので、使い勝手が悪い場合があります。
前方(Z方向)を強引に変えれば、弾としても使用できる形状になり、利便性が上がります。
オブジェクトの前方向を変更
空のオブジェクトを作成します。
GameObject(空のオブジェクト)を右クリックし、カプセルを選択します。
GameObjectの子オブジェクトとして、Capsuleが追加されました。
Capsuleを見てみると、Z方向はこのベクトルになっています。
この方向に飛んでいくとなると、ミサイル(弾)などで使用しづらいです。
Capsuleを選択し、Xを軸に90°回転させましょう。
GameObjectを選択してみます。
こうすれば見かけ上、親オブジェクトのZ方向が適用されました。
プレハブ化しても、Capsuleは横向きになっています。
オブジェクトとして使う際には、このGameObjectを使用しましょう。
Z方向がきちんと設定されているかどうか、簡単なスクリプトを使って試してみます。
Cubeを作成し、適当なところに配置します。
GameManager.csを作成し、GameObjectにアタッチします。
GameManager.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 GameManager : MonoBehaviour { [SerializeField] GameObject target; void Start() { transform.LookAt(target.transform); } } |
ターゲットのフィールドに、Cubeを入れます。
ゲームプレイしてみましょう。
LookAtでは、Z方向がターゲットに向けて動きます。
Capsuleの見た目の方向も変わっていることが確認できます。