Variables
position:
Vector3 物体在世界坐标中的位置。
transform.position=Vector3(10,10,10)//把物体放到(x=10,y=10,z=10)的位置
localPosition:
Vector3 相对位置,或自身位置,物体相对于父物体的位置。
eulerAngles:
Vector3 轴向旋转角度,相对于世界坐标。单位为度(°)
localPosition:
Vector3
相对轴向旋转角度,或自身的旋转角度,物体相对于父物体的旋转。一般使用和处理物体的旋转角度时都会使用到这个数值。
right:
Vector3
物体自身的红色轴向(X轴)在世界坐标中所指向的位置。注意在maya中x轴指向物体的左边,而unity中的x轴则指向物体的右边。rigidbody.velotity=transform.right*moveSpeed;//向物体的右侧以moveSpeed的速度移动
up:
Vector3 物体自身的绿色轴向(Y轴)在世界坐标中所指向的位置。
forward:
Vector3 物体自身的蓝色轴向(Z轴)在世界坐标中所指向的位置。
rotation:
Quaternion
以四元数来表达的物体自身的旋转。四元数可以快速的处理物体的旋转方向的计算,搭配Quaternion可以用来计算各种需要的旋转方案。具体应用方法参见Quaternion篇
localRotation:
Quaternion 相对于父物体的用四元数来表达的旋转。
localScale:
Vector3 物体相对于父物体的缩放
parent:
Transform
物体的父物体。如果没有则返回null。如果改变父物体的位置,旋转和缩放,会同时影响并改变子物体的位置,旋转和缩放,但是保持相对位置,相对旋转和相对缩放。
worldToLocalMatrix:
Matrix4x4 一个表达从世界坐标到相对坐标位置的四维矩阵,Read
Only。如果你对矩阵不是很了解,请使用Transform.InverseTransformPoint。
LocalToWorldMatrix:
Matrix4x4 一个表达从相对坐标到世界坐标位置的四维矩阵,Read
Only。如果你对矩阵不是很了解,请使用Transform.TransformPoint。
root:
Transform 返回物体的最高层的父物体。如果物体本身就是最高层,则返回物体本身。
childCount:
Int 返回物体的子物体数量。
lossyScale:Vector3
返回物体相对于世界坐标的缩放值。 Read
Only。没什么用的一个属性,当子物体被旋转后也不是特别精确,也不推荐大家用。如果想要计算物体的世界坐标缩放,最好自己写计算公式。
Functions
1)Translate,用来移动物体的函数,非常常用的一个函数。
function Translate
(translation : Vector3,
relativeTo : Space = Space.Self)
: void
把物体向translation方向移动,距离为translation.magnitude。
relativeTo表示这个移动的参考坐标系。
function Translate (x : float, y : float,
z : float, relativeTo : Space = Space.Self)
: void
同上
function Translate (translation
: Vector3,
relativeTo : Transform) : void
如果relativeTo
不是null,则以目标物体relativeTo的自身轴向作为参考坐标系。
function Translate
(x : float, y : float,
z : float, relativeTo :
Transform) : void
同上
脚本:
var speed=30;
//将物体以30米每秒的速度向前移动。
trasform.Translate(Vector3.forward*speed*Time.deltaTime);
2)Rotate,用来旋转物体的函数,非常常用,在知道需要旋转的角度的情况下。如果要让物体旋转到指定位置,需要搭配Quaternion来使用。
function Rotate
(eulerAngles : Vector3,
relativeTo : Space = Space.Self)
: void
旋转eulerAngles度(3个轴向分别旋转),以relativeTo为参考坐标系
function Rotate (xAngle : float, yAngle : float,
zAngle : float, relativeTo
: Space = Space.Self)
: void
同上
以axis为轴旋转angle度,以relativeTo为参考坐标系
3)RotateAround
让物体以某一点为轴心成圆周运动。
function RotateAround
(point : Vector3,
axis : Vector3,
angle : float) : void
让物体以point为中心,绕axis为轴向旋转angle度。保持原来与point的距离。
4)LookAt
让物体的z轴看向目标物体
function LookAt
(target : Transform, worldUp : Vector3 = Vector3.up)
: void
让物体的z轴看向target的位置,并以worldUp为y轴指向方向。
5)TransformDirection
function TransformDirection (direction
: Vector3)
: Vector3
返回以物体自身为坐标轴的向量direction在世界坐标中的朝向向量。
function TransformDirection (x
: float, y : float,
z : float) : Vector3
同上
6)InverseTransformDirection
function InverseTransformDirection
(direction : Vector3)
: Vector3
function InverseTransformDirection (x
: float, y : float,
z : float) : Vector3
与TransformDirection相反,从世界坐标转换到自身相对坐标。
7)TransformPoint
function TransformPoint (position
: Vector3)
: Vector3
function TransformPoint (x : float, y : float,
z : float) : Vector3
把一个点从自身相对坐标转换到世界坐标
8)InverseTransformPoint
function InverseTransformPoint
(position : Vector3)
: Vector3
function InverseTransformPoint (x
: float, y : float,
z : float) : Vector3
把一个点从时间坐标转换到自身坐标的位置。
9)DetachChildren
function DetachChildren () : void
把自身所有的子物体的父物体都设成世界,也就是跟自己的所有子物体接触父子关系。
10)Find
function Find (name : string)
: Transform
找到一个名字是name的物体并返回
如果没有找到则返回null。如果字符串被/隔离,函数则会像文件路径一样逐级下查。
// The magical rotating finger
function Update() {
aFinger = transform.Find("LeftShoulder/Arm/Hand/Finger");
aFinger.Rotate(Time.deltaTime*20, 0, 0);
}
11)IsChildOf
function IsChildOf (parent : Transform)
: bool
如果物体是parent的父子层级关系下的一员,返回true;
Unity Transform常识(转),布布扣,bubuko.com
Unity Transform常识(转)
原文:http://www.cnblogs.com/eangulee/p/3572037.html