从零构建Unity 3D游戏:开发与设计实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 Unity界面

Unity的界面分成几个主要组件,如图1.9所示,包括:场景组件(见框①),里面有游戏对象;检视器组件(见框②),用于修改这些游戏对象的属性的;项目窗口(见框③),里面有不是激活状态但是可以添加进场景中的对象;游戏视图(见框④);包管理器(不在图1.9中)。

图1.9 整个界面

1.2.1 场景视图和层级结构

场景视图和层级结构协同工作,层级结构决定了游戏运行时场景如何渲染。在场景视图中可以随时修改游戏对象和它们的值。此外,当编辑器处于运行模式时,游戏逻辑可以对层级结构中的游戏对象进行修改。

如果是在运行模式下修改的游戏对象,包括在场景视图中所做的改动,那么在停止游戏后,游戏对象会恢复到运行之前的原始状态。

在图1.10中,可以直接看到很多信息。在左侧的层级结构中,可以看到场景中的游戏对象。这些游戏对象都有一个Transform,表示它们在世界中的位置。如果双击或单击一个游戏对象,将鼠标放在场景视图中,然后按F键,就可以聚焦于这个游戏对象,让这个游戏对象处于场景视角的中心。

当选定一个游戏对象时,可以看到在对象的轴心点(通常是对象的中心)有一个彩色箭头样式的工具,使用这个箭头工具可以设置游戏对象在空间中的位置。还可以通过选择两个轴之间的小方块将对象放置在平面上。

在图1.10的右上角可以看到一个Gizmo相机。这个小工具可以让你轻松地将摄像机的视角定位到正面、侧面、顶部、底部,或者单击一下即可将其更改为等距摄像机或透视摄像机。

现在你已经学会了在场景或层级结构中单击鼠标左键选择游戏对象,你可能想要更改该游戏对象的一些属性或添加组件,这就是检视器发挥作用的地方。

图1.10 场景和层级

1.2.2 检视器

若想修改游戏对象的值,在场景视图或者层级结构中选中此游戏对象,检视器(Inspector)中就会列出此游戏对象可以修改的项,如图1.11所示。

图1.11 检视器窗口

图1.11中的检视器窗口显示大部分项已经有值了。顶部的名称是Cube,左侧的蓝色立方体表示预制件数据类型。你可以通过单击名称正下方的Open按钮对预制件本身进行更改,这个操作会创建一个只显示预制件的新场景视图。当对预制件进行更改时,它将对任何场景中所有引用这个预制件的实例进行更改。

转换(Transform)组件显示场景中预制件的位置、旋转和缩放。

网格过滤器(Mesh Filter)组件显示组成这个多边形的顶点、边和面。

下面是网格渲染(Mesh Renderer)组件,它用于决定Mesh Filter组件中的风格如何渲染。我们可以在这里设置材质以及与游戏对象的特定光照和探测器相关的其他选项,在第12章中将进一步介绍。

再下面是碰撞器和刚体。这两个组件协同工作,让游戏对象可以有实时的物理特性。

我们已经讨论了很多场景中的游戏对象以及它们的属性,但如果它们只是被引用的对象,如何在场景之外找到它们?答案是项目窗口。

1.2.3 项目窗口

在这里会显示一些资源,这些资源会在场景中实例化或作为组件在构建游戏时使用。

被引用的游戏对象都在这个窗口中显示。图1.12所示的Assets文件夹中的所有对象实际上都保存在你的硬盘上。Unity会生成包含这些对象的所有属性的元文件。

图1.12 项目窗口

在项目(Project)窗口中保留原始文件的有用之处在于,你可以对某个对象进行更改,然后当专注于Unity项目(单击Unity应用)时,Unity将重新调整元文件并重新加载场景中的对象。这可以帮你更快地迭代程序脚本和美术设计!

我们已经查看了场景中的游戏对象,通过修改Transform来放置它们,并且了解了游戏对象是从哪里引用的。现在我们应该看一下游戏视图以了解游戏本身了。

1.2.4 游戏视图

游戏视图(见图1.13)与场景视图很像,并且它也遵循场景视图中的构建规则。除非你定义了其他用于渲染的摄像机,否则游戏视图会自动通过主摄像机渲染场景内容。

图1.13 游戏视图

游戏视图与场景窗口顶部选项的不同。在左上角,我们可以看到展示(Display)下拉菜单,如果场景中有多个摄像机,可以在这里更换。屏幕分辨率在其右侧,用于查看游戏在某些设备上的显示效果。缩放(Scale)在屏幕分辨率的右边,用于快速调试窗口缩放的不同效果。运行时最大化(Maximize On Play)可以在运行时将窗口最大化,以利用全屏。音频静音(Mute Audio)可以停止播放游戏音频。状态(Stats)可以在游戏视图中提供一个小的统计概览,如图1.14所示。

在这个项目的后期优化过程中,我们将通过更深入的方式分析以查看可能导致游戏出问题的因素,包括内存用量及其他一些可优化的方面。

图1.14 游戏统计

继续向右是小工具(Gizmos),这是游戏视图中的一组选项,你可能想要看到这些数据。在这个菜单中,你可以根据需要关闭或打开它们。

1.2.5 包管理器

你的Unity ID中会包括你从Unity Asset Store购买的软件包,还有你的硬盘或GitHub上的软件包。可以使用包管理器将包导入你的项目中。

可以在菜单Window > Package Manager下找到这些包,如图1.15所示。

打开包管理器后,首先会看到项目中的包。可以用左上角的下拉菜单查看Unity中的标准包或你在Unity Asset Store中购买的软件包。

图1.15 包管理器菜单

如图1.16所示,通过菜单选择Unity注册表(Unity Registry),你将看到一个免费的Unity测试包列表,这些包是Unity平台的一部分,可以按需使用。当你单击左侧的某个包时,可以通过右侧标有查看文档(View documentation)的链接阅读每个包的文档。

图1.16 包管理器

如果在菜单中选择在项目中(In Project),你将看到当前加载的项目已经安装了哪些包,这可以用于卸载可能不需要的软件包。

我的资产(My Assets)可以显示你购买过的资源或你参与的项目,以及与你的Unity ID相关联的购买过的资源。

内置(Built-in)是可以用于任何项目的标准包。你可以根据需求启用或禁用内置包。了解这些包并禁用不需要的包,因为一个项目前期比较整洁的话可以减少后期的优化。