前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Unity3D脚印3——Transfor

Unity3D脚印3——Transfor

作者头像
py3study
发布2020-01-10 16:00:45
7240
发布2020-01-10 16:00:45
举报
文章被收录于专栏:python3

Transform组件用于控制物体的位置,旋转和缩放,这里面涉及两个重点,一个是坐标系,这个包括局部坐标系和世界坐标系的关系,另外一个是父子节点,GameObject的父子节点关系是通过Transform组件来维护的。

位置相关的:

5个和位置相关的Vector3类型变量

up 表示世界坐标的Y轴方向

right 表示世界坐标的X轴方向

forward 表示世界坐标的Z轴方向

position 表示对象在世界坐标系中的位置

localPosition 表示对象相对父节点变换的坐标位置

void Translate(Vector3 translation, Space relativeTo = Space.Self);

在relativeTo坐标系上,平移translation距离,Space有两个坐标系,Self表示本地坐标系,World表示世界坐标系

PS.如果使用Vector3的up, right, forward,就是基于局部坐标系的移动

旋转相关的:

2个Vector3类型的变量

eulerAngles 在世界坐标旋转作为欧拉角度

localEulerAngles 相对父节点的欧拉角旋转

2个Quaternion类型的变量

rotation 在世界坐标系中的旋转角度,是一个Quaternion对象(四元数)

localRotation 相对于父节点的旋转角度

void Rotate(Vector3 eulerAngles, Space relativeTo = Space.Self) 应用一个欧拉角绕x,y,z轴旋转(根据x,y,z的顺序)

void RotateAround(Vector3 point, Vector3 axis, float angle) 按照angle°在世界坐标的point上旋转物体

void LookAt(Transform target, Vector3 worldUp = Vector3.up) 旋转物体使forward向量指向target的位置

缩放相关的:

1个Vector3类型的变量

localScale 相对于父节点的缩放

父子节点相关的:

parent 变量表示Transform的父节点

root 表示它的根节点,如果没有父节点,它会返回自己

Transform Find(string name) 根据名字查找子节点

bool IsChildOf(Transform node) 判断该Transform是否某Transform的子节点

void DetachChildren() 解除所有子节点的父子关系

坐标系的转换:

TransformDirection 将一个方向从局部坐标系转换到世界坐标系

InverseTransformDirection 将一个方向从世界坐标系转换到局部坐标系

TransformPoint 将一个点从局部坐标系转换到世界坐标系

InverseTransformPoint 将一个点从世界坐标系转换到局部坐标系

先记录到这里吧,感觉应该还有点什么的...

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/08/28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档