1. 程式人生 > >Unity3D 獲取一個遊戲物件的尺寸

Unity3D 獲取一個遊戲物件的尺寸

首先我很不解為什麼Unity開發者沒有遊戲物件的尺寸表示出來,為開發精確性比較高的遊戲增加了難度。因此一番摸索終於搞懂了這玩意。
Unity3D中的物體都是以米為單位來計算的,比如 cube的x,y,z都為1米,而plane的x=z=10,y=0.
using UnityEngine;
using System.Collections;

public class move : MonoBehaviour {

    // Use this for initialization
    public Collider cd;
    void Start () {
        cd = GetComponent<BoxCollider>();
        Debug.Log(cd.bounds.size.x);
        Debug.Log(cd.bounds.size.y);
        Debug.Log(cd.bounds.size.z);
    }

    // Update is called once per frame
void Update () { } }

首要要獲取Collider : 有兩種方法 :寫指令碼 cd = GetComponent(); 另一種就是直接在圖形介面中拖入。 然後記住 cd.bounds.size.x 就好了。

Transform 中的scale乘上初始尺寸就為實際長度了。
(如果初始值為0,那麼改變scale就不會有變化,就像相機)