Appearance
坐标与变换系统
零基础重点
Unity 里每个 GameObject 都有 Transform,它负责三件事:
c
Position = 位置
Rotation = 旋转/朝向
Scale = 缩放/大小坐标轴记法:
c
X:左右,红色
Y:上下,绿色
Z:前后,蓝色最容易混的是:
c
transform.position // 世界坐标
transform.localPosition // 相对父对象的局部坐标如果 Weapon 是 Player 的子对象,那么 Weapon.localPosition 表示它相对 Player 的位置,而不是整个世界的位置。
常用代码
c
transform.position = new Vector3(0, 1, 0);
transform.localScale = new Vector3(2, 2, 2);
transform.rotation = Quaternion.Euler(0, 90, 0);
Vector3 world = transform.TransformPoint(local);
Vector3 local = transform.InverseTransformPoint(world);