Unity position和localposition

1. position是根据世界原点为中心

2. localPosition是根据父节点为中心,如果没有父节点,localpositon和position是没有区别的

3.选中一个物体左上角Global和Local切换看物体世界坐标轴和本地坐标轴

 

image

 

代码:

using UnityEngine;
using System.Collections;

public class TestPostiton : MonoBehaviour {
    

    void OnGUI() 
    {
        if (GUI.Button(new Rect(0, 0, 200, 50), "世界坐标移动"))
        {
            this.gameObject.transform.position = new Vector3(gameObject.transform.position.x+1
                ,gameObject.transform.position.y
                , gameObject.transform.position.z);
        }

        if (GUI.Button(new Rect(0, 50, 200, 50), "本地坐标移动"))
        {
            this.gameObject.transform.localPosition = new Vector3(gameObject.transform.localPosition.x+1
                , gameObject.transform.localPosition.y 
                , gameObject.transform.localPosition.z);
        }

        GUI.Label(new Rect(210, 0, 300, 50), "世界坐标:" + string.Format("({0},{1},{2})", gameObject.transform.position.x, gameObject.transform.position.y, gameObject.transform.position.z));
        GUI.Label(new Rect(210, 50, 300, 50), "本地坐标:" + string.Format("({0},{1},{2})", gameObject.transform.localPosition.x, gameObject.transform.localPosition.y, gameObject.transform.localPosition.z));


    }

}
posted @ 2015-01-11 13:18  盘子脸  阅读(26538)  评论(0编辑  收藏  举报