物体移动:
1、
transform.Translate():位置,相对值,默认按自身坐标。
transform.position:位置,绝对值,按世界坐标。
2、刚体(Rigidbody)
MovePosition():位置,绝对值,按世界坐标。
velocity:速度,按世界坐标。
AddForce():添加力,按世界坐标。
AddRelativeForce():添加力,按自身坐标
3、角色控制器(CharacterController)
SimpleMove():速度,按世界坐标
物体旋转:
transform.Rotate():相对值,默认按自身坐标。
transform.Rotation:绝对值,为Quaternion类型,按自身坐标。Quaternion.Euler(0,0,5):欧拉角转换为四元数。
transform.eulerAngles:绝对值,按自身坐标。
transform.localEulerAngles:相对父元素,按自身坐标。
物体缩放:
transform.localScale:绝对值,按自身坐标。
方向从自身坐标转世界坐标:transform.TransformDirection()
方向从世界坐标转自身坐标:transform.InverseTransformDirection()
位置从自身坐标转世界坐标:transform.TransformPoint(),会受缩放影响
位置从世界坐标转自身坐标:transform.InverseTransformPoint(),会受缩放影响
屏幕坐标转世界坐标:Camera.main.ScreenToWorldPoint()
世界坐标转屏幕坐标:Camera.main.WorldToScreenPoint()
获取鼠标点击位置(屏幕坐标):Vector3 Input.mousePosition
获取触控点击位置(屏幕坐标):Vector2 Input.GetTouch(0).position
总结:
1、移动一般按世界坐标,旋转和缩放一般按自身坐标,特殊情况:
(1)transform.Translate()和transform.Rotate()默认按自身坐标,也可指定按世界坐标。
(2)AddRelativeForce()是按自身坐标。
2、位置、旋转、缩放一般为绝对值,力和速度一般为相对值,特殊情况:
transform.Translate()和transform.Rotate()为相对值。