Version: 6000.3
语言: 中文
Unity 中的 AI 入门
安装和升级

关键概念

从打开 Unity 编辑器的那一刻起,您就依赖一些概念。使用此页面在完成教程和第一个项目时刷新记忆。

游戏对象、组件和场景

游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表
代表游戏中的所有内容,包括角色、道具和风景。在 Unity 编辑器中,场景中的所有对象都是游戏对象。相比之下,项目资源是添加到场景中的源文件。例如,C#脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表
、纹理、材质、3D模型文件包含 3D 数据的文件,其中可能包括网格、骨骼、动画、材质和纹理的定义。更多信息
请参阅术语表
预制件一种资产类型,允许您存储包含组件和属性的游戏对象。预制件充当模板,你可以从中在场景中创建新的对象实例。更多信息
请参阅术语表
.

游戏对象存在于 2D 或 3D 环境中,称为场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表
.您可以将场景视为游戏关卡,但它也可能代表菜单、游戏结束时的制作人员名单或过场动画。

游戏对象的行为由称为组件的功能块定义。您可以将多个组件附加到游戏对象。以下组件是 3D 游戏的基础:

元件 对游戏对象的影响
变换 确定场景中每个游戏对象的位置、旋转和缩放。每个游戏对象都有一个变换组件变换组件确定场景中每个对象的位置、旋转和缩放。每个游戏对象都有一个 Transform。更多信息
请参阅术语表
.
网格过滤器 定义 3D 游戏对象的形状。
网格体渲染器(Mesh Renderer) 应用纹理并处理 3D 游戏对象在光照示例下的外观。
相机 定义捕获并向玩家显示世界的游戏对象。
刚体 允许游戏对象与物理系统交互,包括重力和碰撞当物理引擎检测到两个游戏对象的碰撞器接触或重叠时,当至少一个游戏对象具有刚体组件并且处于运动状态时,就会发生碰撞。更多信息
请参阅术语表
.请参阅本指南的物理部分。
碰撞体 定义 3D 游戏对象的形状,以实现物理碰撞,该形状可以与 3D 不同meshUnity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表
的可见形状。

返回页首

脚本

使用脚本创建复杂的游戏行为,例如:

  • 触发游戏事件,例如将用户移动到获胜或失败场景,以响应用户游戏统计信息的变化。
  • 随着时间的推移更改组件属性。例如,更改隐藏门的可见性、缩小和放大对象或折叠墙壁。
  • 响应用户输入以移动其角色、与对象交互以及选择菜单选项。

要将脚本添加到游戏对象,请添加脚本组件,并在其中引用您自己的脚本。

Unity 原生支持 C# 编程语言。

返回页首

3D 模型

模型是对象的 3D 表示。3D 游戏的大多数视觉效果由模型组成,例如角色、交互对象和玩家周围的世界。

您可以使用 ProBuilder 等工具在 Unity 编辑器中创建模型。但是,这些最适合原型设计,而不是最终产品。

要向最终产品添加更精美的 3D 资源,请在 3D 建模软件中创建 3D 模型及其材质和纹理,然后将它们导入编辑器。

左:玩家角色的3D多边形网格体。右图:在 Unity 中使用材质渲染的玩家网格体
左:玩家角色的3D多边形网格体。右图:在 Unity 中使用材质渲染的玩家网格体

模型导入编辑器,以便在项目中使用它们。编辑器使用.fbx格式。您还可以使用其他常见的原生模型格式(例如.max,.blend,.mb,.ma);编辑器将它们转换为.fbx当您导入它们时。

渲染网格

3D 网格是 3D 模型的结构构建。它由多个多边形形状组成。要将 3D 模型添加到游戏对象,您的游戏对象需要两个组件:

  1. 网格体过滤器(Mesh Filter一种网格体组件,用于从资产中获取网格体并将其传递给网格体渲染器(Mesh Renderer) 以在屏幕上渲染。更多信息
    请参阅术语表
    组件,其中包括实际网格体。
  2. 网格体渲染器(Mesh Renderer一个网格体组件,用于从网格体过滤器中获取几何体,并将其渲染到对象的变换组件定义的位置。更多信息
    请参阅术语表
    组件,它向网格体添加材质,使网格体在场景中可见。

材料

材质定义表面应如何渲染的资产。更多信息
请参阅术语表
组合有关表面视觉外观的信息,例如纹理渲染游戏对象、精灵或 UI 元素时使用的图像。纹理通常应用于网格表面,以赋予其视觉细节。更多信息
请参阅术语表
、色调和着色器在 GPU 上运行的程序。更多信息
请参阅术语表
.使用材质来定义如何渲染表面。

  • 纹理是您导入到 Unity 中的任何 2D 图像文件。使用纹理包裹网格并为模型添加精细细节。使用色调来改变纹理的颜色。
  • 着色器设置光照输入和材质配置,以控制每个像素计算机图像中的最小单位。像素大小取决于您的屏幕分辨率。像素光照是在每个屏幕像素下计算的。更多信息
    请参阅术语表
    renders,这决定了游戏对象在屏幕上的外观。

有关材质设计,请参阅 Unity Learn 教程。

返回页首

构建游戏内环境

通过向场景添加模型和其他资产来创建环境。
通过向场景添加模型和其他资产来创建环境。

环境设计是创建游戏发生的世界的过程。您可以在 Unity 编辑器中设计和构建环境,也可以在编辑器之外设计环境并导入它。

要构建游戏内环境,请将游戏对象添加到场景中,并根据您的偏好和设计放置它们。您可以使用 ProBuilder 对设计和游戏进行原型设计。

除了在场景中手动放置模型外,Unity 编辑器还包括一组内置的地形场景中的地形。地形游戏对象向场景添加一个大型平面,您可以使用地形的“检查器”窗口创建详细的地形。更多信息
请参阅术语表
允许您向游戏添加地形的功能。在编辑器中,您可以创建多个地形图块,调整地形的高度或外观,并向其添加树木或草。阅读有关创建和使用地形的更多信息。

返回页首

动画

动画描述对象如何根据游戏状态、玩家交互、时间等而变化。他们还为角色提供动作、创建过场动画并改变环境。

有两种方法可以向游戏添加动画:

  • 导入在其他程序中制作的动画。
  • 直接在编辑器中为资产制作动画。

有关详细信息,请参阅 Unity Learn 动画主题

导入动画

导入带有动画剪辑的模型时,您可以选择要导入的剪辑。这意味着您可以在第三方应用程序中为模型制作动画,然后在编辑器中访问和编辑剪辑。

有关详细信息,请参阅“模型导入设置”窗口的“动画”选项卡

在 Unity 中为模型制作动画

使用 动画(Animation) 窗口在编辑器中创建和修改动画剪辑。

要了解动画在编辑器中的工作原理,请参阅Mecanim动画系统

“动画器”窗口

您可以使用动画器窗口 可视化和编辑动画器控制器的窗口。更多信息
请参阅术语表
自:

控制动画

要控制播放哪些动画剪辑,您可以:

返回页首

照明

照亮您的场景,为您的环境增添深度和情绪。

除 Empty 模板外,所有内置场景模板都包含单个 Light GameObject。对于大多数场景,您需要创建其他光照游戏对象来创建所需的光照。

有关详细信息,请参阅:

聚光灯在此场景中创建大气照明
聚光灯在此场景中创建大气照明

返回页首

音频

要向游戏添加背景音乐和音效,请参阅音频概述。你需要使用第三方软件创建音频并将其导入编辑器。然后,您可以混合声音,将它们放置在场景中,并创建环境声音。

返回页首

物理

玩家角色有一个胶囊碰撞器组件,该组件使用物理系统允许角色与墙壁碰撞。
玩家角色有一个胶囊碰撞器组件,该组件使用物理系统允许角色与墙壁碰撞。

使用 Unity 的物理系统来控制对象如何相互交互以及与其环境交互。例如,您可以:

  • 使用力(例如重力和力学)来定义游戏对象在碰撞时的行为方式。
  • 创建自定义物理以适应游戏设计,这可能不需要对地球进行精确模拟。

要了解如何使用 Unity 的物理系统,您可以参考:

要将物理系统应用于游戏对象,请使用刚体允许游戏对象受到模拟重力和其他力影响的组件。更多信息
请参阅术语表
碰撞体(Collider) 用于处理对象物理碰撞的不可见形状。碰撞体不需要与对象的网格体形状完全相同 - 在游戏中,粗略的近似值通常更有效且难以区分。更多信息
请参阅术语表
组件:

元件 对游戏对象的影响
刚体 允许游戏对象受到物理系统的影响,并对重力和碰撞等做出反应。
对撞机 使游戏对象能够与场景中的其他游戏对象进行交互。例如,具有碰撞器的游戏对象可以移动或被另一个具有碰撞器的游戏对象移动。
带触发器的碰撞体 当两个游戏对象相交时,在代码中调用函数。

返回页首

用户界面

要创建界面元素,例如菜单、齿轮列表和信息弹出窗口,请使用 UI 工具包

返回页首

其他资源

Unity 中的 AI 入门
安装和升级