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

同上

function Rotate (axis : Vector3, angle : 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轴指向方向。

function LookAt (worldPosition : Vector3, worldUp : Vector3 = Vector3.up) : void

让物体看向worldPosition
 
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常识(转)的更多相关文章

  1. unity Transform.TransformPoint

    正如unity api文档所说: Transforms position from local space to world space. 即Transform.TransformPoint是将局部坐 ...

  2. unity Transform Find 的用法!!!

    用法: Transform Find(String name) 1.查找名为name的(transform.gameObject)直接子物体并返回该子物体的Transform属性.不能是孙子物体或更低 ...

  3. unity transform 常用操作

    1.寻找物体 1.1 寻找满足条件的子物体 ` public static Transform FindObj(Transform transform, Func<Transform, bool ...

  4. Unity Transform

    public class PlayerControll : MonoBehaviour { Transform playerTransform; Animation playerAnimation; ...

  5. 关于Unity中的transform组件(二)

    在Scene视图中的蓝色网格,每一格默认是1米 一.沿着Z轴每秒移动10米 Transform cube_trans; void start(){ this.cube_trans=this.trans ...

  6. 具体解释MVP矩阵之ViewMatrix

    矩阵推导 ViewMatrix用于直接将World坐标系下的坐标转换到Camera坐标系下.已知相机的坐标系.还有相机在世界空间下的坐标.就能够求出ViewMatrix.以下进行具体推导. 令UVN为 ...

  7. 深入解读Job System(1)

    https://mp.weixin.qq.com/s/IY_zmySNrit5H8i0CcTR7Q 通常而言,最好不要把Unity实体组件系统ECS和Job System看作互相独立的部分,要把它们看 ...

  8. Unity3D_Transform_位置、角度、缩放及其他

    1.位置 transforn.position  世界位置 transform.localPosition 相对父类位置 在屏幕左上方显示方法: private void OnGUI() { GUIL ...

  9. Unity 3D Intantiate过程中Transform 空物体和本体之间的关系

    想当年刚学Unity的时候,这个问题困扰了我好几天,因此来分享一下当初解决问题的思路. 我们通过Unity构建场景的过程中,经常发现一个现象,就是物体在拖进场景中后,我们会发现物体是反的,通过改变物体 ...

随机推荐

  1. app具体介绍界面-01

    在我们的上一篇博客中,我们介绍了首页中的app列表界面怎样完毕.这个ListView以及其Adapter会在我们后面的界面中重用,所以这个是比較重要的,在这一篇博客中,我们先完毕app具体介绍界面的一 ...

  2. C# Backgroundworker(后台线程)的使用

    namespace BackgroundWorkderPauseSample { public partial class MainForm : Form { BackgroundWorker wor ...

  3. 子结点childNodes

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  4. 使用Poi对EXCLE的导入导出

    import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ...

  5. hiberinate二级缓存

    hibernate.cfg.xml配置 <!-- 二级缓存类型 --> <property name="hibernate.cache.region.factory_cla ...

  6. iOS Webview 与 app交互

    有时候我们在内嵌的webview中希望点击一个链接之后,触发iOS原生事件,而不是webview内页面跳转(因为webview的跳转很生硬,而ajax+js模拟则不如原生segue平滑). 有时候我们 ...

  7. boost::serialization 用基类指针转存派生类(错误多多,一波三折)

    boost::serialization 也支持c++的多态,这样我们就能够通过使用基类的指针来转存派生类, 我们接着上一篇( boost::serialization(2)序列化基类 )的样例来看: ...

  8. 使用MegaCli查看raid信息

    LSI SAS based MegaRAID driver http://www.lsi.com/downloads/Public/Nytro/downloads/Nytro%20XD/MegaCli ...

  9. Centos6-编译安装Redis

    [root@tbwy02 ~]# cd /tools/[root@tbwy02 tools]# yum install -y wget gcc make tcl[root@tbwy02 tools]# ...

  10. testng 工程报错java.net.SocketException

    报错如下: java.net.SocketException: Software caused connection abort: socket write error at java.net.Soc ...