当前位置: 首页 > news >正文

Unity Transform 组件

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

1. position  
   表示物体在世界空间中的位置。可以通过 transform.position 获取和设置。它是一个 Vector3,表示物体在 x、y、z 轴上的位置。
   csharp
   transform.position = new Vector3(0, 5, 10);
   

2. localPosition  
   表示物体在其父对象的本地空间中的位置。如果物体没有父对象,则 localPosition 和 position 是相同的。
   csharp
   transform.localPosition = new Vector3(1, 2, 3);
   

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

4. localRotation  
   表示物体在本地空间中的旋转。如果物体有父对象,这个值会相对于父对象的旋转来计算。
   csharp
   transform.localRotation = Quaternion.Euler(45, 0, 0);
   

5. eulerAngles  
   物体的欧拉角表示的旋转。虽然 Unity 内部使用四元数来表示旋转,但欧拉角更直观,尤其是对于简单的旋转操作。
   csharp
   transform.eulerAngles = new Vector3(0, 180, 0);
   

6. localEulerAngles  
   表示物体的本地空间中的欧拉角旋转。
   csharp
   transform.localEulerAngles = new Vector3(30, 60, 90);
   

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

8. parent  
   获取或设置物体的父对象。通过设置父对象,你可以控制该物体相对于父对象的位置、旋转和缩放。
   csharp
   transform.parent = someOtherTransform;
   

9. childCount  
   表示当前物体有多少个子对象。
   csharp
   int count = transform.childCount;
   

10. SetParent(Transform parent)  
    设置或更改物体的父对象。如果传入 null,物体将没有父对象。
    csharp
    transform.SetParent(newParentTransform);
    

11. Translate  
    用于移动物体,支持世界空间或本地空间。
    csharp
    transform.Translate(Vector3.forward  Time.deltaTime);
    

12. Rotate  
    用于旋转物体,支持世界空间或本地空间。
    csharp
    transform.Rotate(Vector3.up, 90);
    

13. LookAt  
    让物体朝向目标对象。
    csharp
    transform.LookAt(targetTransform);
    

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

http://www.lryc.cn/news/441820.html

相关文章:

  • LeeCode 3. 无重复字符的最长子串
  • 使用canal.deployer-1.1.7和canal.adapter-1.1.7实现mysql数据同步
  • VMware Workstation Pro 17下载及安装教程
  • 集采良药:从“天价神药”到低价良药,伊马替尼的真实世界研究!
  • 00898 互联网软件应用与开发自考复习题
  • linux 进程间通信之pthread(条件变量共享和互斥锁共享)
  • 数据结构-2.7.单链表的查找与长度计算
  • iotop 命令:磁盘IO监控和诊断
  • 解锁编程新境界:GitHub Copilot 让效率翻倍
  • 爱普生相机SD卡格式化后数据恢复指南
  • 【数据结构】排序算法---基数排序
  • 二叉树(下)
  • 计算机网络33——文件系统
  • 算法:76.最小覆盖子串
  • DNS服务
  • STM32 HAL freertos零基础(九)任务通知
  • Qt+FFmpeg开发视频播放器笔记(三):音视频流解析封装
  • 从黎巴嫩电子通信设备爆炸看如何防范网络电子袭击
  • 【Verilog学习日常】—牛客网刷题—Verilog快速入门—VL16
  • 12 - TCPServer实验
  • Explain执行计划
  • ARM/Linux嵌入式面经(三六):中科曙光
  • Python和C++气候模型算法模型气候学模拟和统计学数据可视化及指标评估
  • 鸿蒙开发城市联动选择弹框
  • css 控制虚线刻度尺寸
  • NLP三天入门大模型,我领先你好几个版本了
  • 专题六_模拟_算法详细总结
  • ArrayList的扩容机制
  • 一、编译原理(引论)
  • 【Javascript修炼篇】JS中的函数式编程