unity学习(transform类 笔记)

本文详细介绍了Unity3D中Transform组件的关键属性和方法,如Find(), localPosition, localEulerAngles, childCount等,以及如何进行物体的位置、旋转、缩放操作。还探讨了父子关系对物体影响及如何调整物体在层次结构中的位置。
摘要由CSDN通过智能技术生成


transform类

transform.Find();

  • 没有静态方法,可以找到子物体自身,隐藏的物体也可以找到(失活的物体)
  • 不是子物体找不到,会报错。

gameObject.Find()

  • 静态方法,找不到隐藏的物体,对全局非隐藏物体进行搜索,隐藏的物体找不到会报错,物体为null
  • transform继承Component

transform.localPosition

  • 返回的子物体位置四舍五入,保留以为小数。

  • 不受父物体旋转缩放影响

  • 但是子物体的世界坐标会被父物体旋转缩放影响

transform.localPosition.x(y或z)

  • 不能直接赋值
  • 要赋值的话obj.localPosition = new Vector3();

transform.eulerAngles

  • 返回世界角度

transform.localEulerAngles

  • 韩慧自身角度

transform.childCount

  • 返回该物体的儿子数量,不包括孙子

print(transform.lossyScale);

  • 返回在世界缩放值

print(transform.localScale);

  • 返回子物体缩放值

transform.hasChanged

  • 判断上次和现在比是否改变
  • 若和之前相比改变了返回true

transform.hierarchyCapacity

  • 返回当前族谱所能承载子孙的数量,并且可以设置祖宗承载子孙的数量。

transform.hierarchyCount

  • 返回当前族谱承载子孙的数量

transform.DetachChildren()

  • 断子绝孙,吧当前该物体所有的儿子去掉,如果该儿子里还有儿子孙子,一起去除掉。

transform.GetSiblingIndex()

  • 返回在兄弟姐妹的排行,从0开始

父子

父物体旋转和移动子物体会受影响。

transform.InverseTransformVector(transform.position)

  • 返回当前物体的世界坐标,受父物体影响.
  • 与之相反的将世界坐标转换自身坐标

transform.TransformVector(transform.position)
(我也没搞懂)用的很少

transform.LookAt(Is)

  • 当前物体看向某个位置或者某个物体

transform.Rotate

  • 自身旋转

transform.RotateAround(Vector3.zero,Vector3.up,Time.deltaTime*30)

  • 围绕着某个点位置或物体旋转

//transform.SetAsFirstSibling();

  • 将层级设置最高级,最前面,如果是在子物体,就设置成兄弟姐妹的最前面

transform.SetAsLastSibling();

  • 同理,设置成最后面。

transform.SetParent(Is)

  • 认贼作父,将ls物体变成父亲

transform.SetSiblingIndex(1)

  • 将自己设置层级为1(或者2 3 4 5)
  • 如果是负数或者超过最大层级,都会放在最后

transform.Translate()

  • 控制物体移动,负数为相反反向

transform.Translate(Vector3.forward * 10*Time.deltaTime);
这是向z方向动

transform.Translate(1,0,0)
三个参数对应的是xyz方向

transform.SetPositionAndRotation

  • 将当前物体移动到指定物体

Transform obj = GameObject.Find(“Cylinder”).transform;
transform.SetPositionAndRotation(obj.position,obj.rotation);

transform和gameObject转换

  • 如果调用某些方法后返回的是transform类型,但是需要赋值到gameObject类型的话,直接".gameObject"转换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

X在学了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值