transform.position和transform.localPosition区别

时间:2023-03-09 18:36:57
transform.position和transform.localPosition区别

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

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

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

transform.position和transform.localPosition区别

using UnityEngine;
using System.Collections; public class TestPostiton : MonoBehaviour {
void OnGUI()
{
if (GUI.Button(new Rect(, , , ), "世界坐标移动"))
{
this.gameObject.transform.position = new Vector3(gameObject.transform.position.x+
,gameObject.transform.position.y
, gameObject.transform.position.z);
} if (GUI.Button(new Rect(, , , ), "本地坐标移动"))
{
this.gameObject.transform.localPosition = new Vector3(gameObject.transform.localPosition.x+
, gameObject.transform.localPosition.y
, gameObject.transform.localPosition.z);
} GUI.Label(new Rect(, , , ), "世界坐标:" + string.Format("({0},{1},{2})", gameObject.transform.position.x, gameObject.transform.position.y, gameObject.transform.position.z));
GUI.Label(new Rect(, , , ), "本地坐标:" + string.Format("({0},{1},{2})", gameObject.transform.localPosition.x, gameObject.transform.localPosition.y, gameObject.transform.localPosition.z)); } }