Unity Transform 组件

在 Unity 中,Transform 是一个非常重要的组件,它定义了物体的位置、旋转和缩放,几乎每个 GameObject 都包含一个 Transform 组件。Transform 组件的主要属性如下:

  1. position

表示物体在世界空间中的位置。可以通过 transform.position 获取和设置。它是一个 Vector3,表示物体在 x、y、z 轴上的位置。

csharp

transform.position = new Vector3(0, 5, 10);

  1. localPosition

表示物体在其父对象的本地空间中的位置。如果物体没有父对象,则 localPosition 和 position 是相同的。

csharp

transform.localPosition = new Vector3(1, 2, 3);

  1. rotation

表示物体的旋转(四元数表示)。可以通过 transform.rotation 获取和设置旋转。四元数更适合用于处理3D旋转,以避免万向节锁问题。

csharp

transform.rotation = Quaternion.Euler(0, 90, 0);

  1. localRotation

表示物体在本地空间中的旋转。如果物体有父对象,这个值会相对于父对象的旋转来计算。

csharp

transform.localRotation = Quaternion.Euler(45, 0, 0);

  1. eulerAngles

物体的欧拉角表示的旋转。虽然 Unity 内部使用四元数来表示旋转,但欧拉角更直观,尤其是对于简单的旋转操作。

csharp

transform.eulerAngles = new Vector3(0, 180, 0);

  1. localEulerAngles

表示物体的本地空间中的欧拉角旋转。

csharp

transform.localEulerAngles = new Vector3(30, 60, 90);

  1. localScale

物体的本地缩放因子。可以通过 transform.localScale 获取和设置。通常是一个 Vector3,表示物体在 x、y、z 轴上的缩放。

csharp

transform.localScale = new Vector3(2, 2, 2);

  1. parent

获取或设置物体的父对象。通过设置父对象,你可以控制该物体相对于父对象的位置、旋转和缩放。

csharp

transform.parent = someOtherTransform;

  1. childCount

表示当前物体有多少个子对象。

csharp

int count = transform.childCount;

  1. SetParent(Transform parent)

设置或更改物体的父对象。如果传入 null,物体将没有父对象。

csharp

transform.SetParent(newParentTransform);

  1. Translate

用于移动物体,支持世界空间或本地空间。

csharp

transform.Translate(Vector3.forward Time.deltaTime);

  1. Rotate

用于旋转物体,支持世界空间或本地空间。

csharp

transform.Rotate(Vector3.up, 90);

  1. LookAt

让物体朝向目标对象。

csharp

transform.LookAt(targetTransform);

通过 Transform 组件,你可以方便地控制游戏对象在场景中的位置、旋转和缩放等各种状态。

相关推荐
土了个豆子的5 小时前
unity中的动画混合树
unity·游戏引擎
奔跑的犀牛先生8 小时前
unity学习26:用Input接口去监测: 鼠标,键盘,虚拟轴,虚拟按键
unity
Dr.勿忘18 小时前
C#面试常考随笔8:using关键字有哪些用法?
开发语言·unity·面试·c#·游戏引擎
存储服务专家StorageExpert19 小时前
答疑解惑:如何监控EMC unity存储系统磁盘重构rebuild进度
运维·unity·存储维护·emc存储
追逐梦想永不停1 天前
Unity实现按键设置功能代码
unity
我命由我123452 天前
游戏引擎 Unity - Unity 下载与安装
c语言·开发语言·c++·后端·unity·c#·游戏引擎
车载诊断技术2 天前
车载软件架构 --- 基于AUTOSAR软件架构的ECU开发流程小白篇
网络·unity·架构·汽车·电子电器框架·车载充电器(obc)
我命由我123452 天前
游戏引擎 Unity - Unity 启动(下载 Unity Editor、生成 Unity Personal Edition 许可证)
c语言·c++·后端·unity·c#·游戏引擎·ue4
我命由我123452 天前
游戏开发领域 - 游戏引擎 UE 与 Unity
开发语言·c++·unity·c#·游戏引擎·unreal engine·unreal engine 4
一个一定要撑住的学习者2 天前
Day29(补)-【AI思考】-精准突围策略——从“时间贫困“到“效率自由“的逆袭方案
人工智能·unity·游戏引擎