#一、描述 此课程讲解TransForm的定义以及使用方法

#二、简介说明

TransForm是对游戏对象的移动,旋转,缩放做操作的,并且如果一个游戏对象他没有父布局的话,他的作用的坐标是世界坐标,如果他有父布局的话,他的坐标是相对于父布局的.

//获取游戏对象的世界坐标

Vector3 vector3 = transform.position;
复制代码

//获取游戏对象的相对坐标

Vector3 vector3 = transform.localPosition;
复制代码

都是对应着物体的朝向,前面,右边,上边,是用于判断当前的朝向,返回对应的数值

transform.forward
transform.right
transform.up
复制代码

//设置游戏对象的世界坐标

transform.position = Vector3.zero;
transform.position = new Vector3 (0f,0,0);
复制代码

//设置游戏对象的相对坐标

transform.localPosition = Vector3.zero;
复制代码

Note:所以总的来说,如果游戏对象有父容器,则应该设置相对坐标localPosition,没有的话,就直接用世界坐标position即可。

//获取游戏对象的缩放

Vector3 vector3 = transform.localScale;
复制代码

//设置游戏对象的缩放

transform.localScale = new Vector3 (2,2,2);
复制代码

//设置游戏对象的移动,以自身的position为基础,进行增加减少

//Translate方法是在自身的坐标基础上移动,比如现在的坐标是1,0,0 ,你设置他移动-1,0,0则他会在之前的坐标基础上进行增加或者减少
transform.Translate(new Vector3(-1,0,0));
复制代码

//设置游戏对象的旋转,第一个参数为以什么方向作为轴进行旋转,第二个参数为旋转的角度,设置up或者down是左右进行旋转,left或者right是上下进行旋转,至于区别就是顺时针或者逆时针的区别了。

transform.Rotate (Vector3.right, 10f);
复制代码

//此方法也是设置旋转(欧拉角),不过只会执行一遍不会在原来的基础上进行变化

transform.eulerAngles = new Vector3(45,0,0);
复制代码

//获取父对象Transform属性以及获取root根对象的Transform属性

Transform transform = transform.parent; //此获取的Transform可以set/get
Transform transforms = transform.root; //获取的跟对象的Transform只能get
复制代码

//获取子对象的名称,find获取一个子对象的名称的transform,而FindChild的时候,如果有多个同名的子对象,则只取第一个,find可以查找到没有开启的子物体

transform.Find("自对象名称");
transform.FindChild("子对象名称");
复制代码

//此方法是根据子对象的索引来查找所有子对象中的某一个

transform.GetChild (i)
复制代码

设置这个物体在根目录下子物体集合中的第几个索引

transform .SetSiblingIndex
复制代码

设置物体成为另一个物体的子物体

GameObject game = GameObject.Find ("Sphere");
game.transform.parent = gameObject.transform;
复制代码

消除自身是根物体的方法,本来下面有多个子物体,调用此方法后,就解散了所有的子物体

transform.DetachChildren ();
复制代码

看向一个Transform的位置

public Transform target;
void Update() {// Rotate the camera every frame so it keeps looking at the target transform.LookAt(target);
}
复制代码

转载于:https://juejin.im/post/5b3ac96cf265da63177fec2e

Unity(TransForm)相关推荐

  1. unity, Transform.TransformPoint(...)

    开始我以为想把一个坐标点p转到父空间需要由transform计算变换矩阵M,然后再用M乘以点p,后来发现unity中可以直接用transform对点进行变换,有transform.TransformP ...

  2. Unity Transform与Hierachy

    术语 模型空间:由模型对象本身决定的空间(Model Space),有时也称对象空间(Object Space)或者局部空间(Local Space),坐标轴xyz分别对应右.上.前三个方向. 世界空 ...

  3. Unity Transform 检视器快速复制粘贴

    原因 Unity 检视器上物体的坐标.旋转和缩放,没有快捷方式可以重置值.复制粘贴值,比较不方便. 解决 分析 Editor 源码,将TransformInspector拷贝进行修改即可. 完整工程地 ...

  4. unity transform的position和localPosition属性的区别

    position是世界坐标中的位置,可以理解为绝对坐标 localPosition是相对于父对象的位置,是相对坐标,我们在transform栏看到的是相对坐标 如果对象是一级对象,position和l ...

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

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

  6. Leap Motion 之Unity 开发指南(一. 基本概念与制作手预制件)

    LeapMotion 之Unity开发指南(一.基本概念和手的预制件) [序言] 最近用Leap Motion + 国产的3Glass眼镜构建了房地产.数字矿山的一些应用,感觉这是很经济的一个VR架构 ...

  7. Unity中实现群组行为

    一:效果演示 不使用群组算法和使用群组算法的演示视频 二:什么是群组行为 群组行为属于人工智能思想,比如说人群走路.鸟群飞行.鱼群游动,群组中成员之间不应该很规律的运动,例如不能拥挤到一起,而是更加真 ...

  8. 如何快速解决Unity中万向节死锁(gimbal lock)的问题

    如何快速解决Unity中万向节死锁(gimbal lock)的问题 转载连接:https://www.jianshu.com/p/59acdd1c9db8 万向节死锁的根本问题是欧拉角(EulerAn ...

  9. 分享2D Unity游戏的动画制作经验

    http://gamerboom.com/archives/76709 作者:Alex Rose Unity最近宣布推出额外的2D游戏支持,添加了Box 2D物理和一个精灵管理器. 但这里还是有些技巧 ...

最新文章

  1. Flux -- Redux -- Redux React 基础实例教程
  2. 介绍linux下Source Insight强大代码编辑器sublime_text_3
  3. 15.1-15.3 FTP,使用vsftpd搭建FTP服务
  4. OpenCASCADE绘制测试线束:拓扑命令之复杂拓扑
  5. C学习杂记(四)sizeof计算联合体大小
  6. MySql 你知道事务隔离是怎么回事吗?
  7. pppoe拨号中的server name和service name
  8. [转]Java游戏引擎
  9. 用python玩转数据第三周_《用Python玩转数据》-03 数据获取与表示
  10. STC学习:串口通信
  11. 解决串口数据接收,实际值FF,接收却是FFFFFFFF
  12. 非线性动力学_matlab应用1:非线性动力学系统理论部分
  13. IE浏览器无法连接网络的解决办法
  14. 【转载】FPGA配置方式
  15. 数学建模优秀论文2(层次分析有关)
  16. 2021年网站dns解析错误有什么办法解决呢?
  17. SpringBoot + uni-app开发企业级图书商城系统
  18. 如何使用bert做word embedding
  19. 对Xcode7真机调试的无力吐槽
  20. rgw bucket sync

热门文章

  1. ELK官方文档收集Kibana监视数据编辑
  2. 10种进阶方法让你快速测试端口连通性
  3. 查看HTML请求(request)中的标头(Headers)信息
  4. VBA代码执行过程中,显示程序的运行状态
  5. 【PostgreSQL-9.6.3】psql常用命令
  6. 解决“‘pip‘ 不是内部或外部命令,也不是可运行的程序或批处理文件“的问题
  7. 主从复制1062错误解决方法
  8. 关于json返回日期格式化的解决方案
  9. 使用$.post和action或servlet交互 URL出现 http://localhost:8080/../[object%20Object] 错误的问题解决
  10. 【jackson 异常】com.fasterxml.jackson.databind.JsonMappingException异常处理