2.3 Unity编辑器界面与基本用法

2.3 Unity编辑器界面与基本用法

本节将介绍Unity编辑器的界面,以及相关的基本用法,使读者对Unity的使用有初步了解。

这里以Unity 2021.3.5f1c1版本为例讲解软件界面布局。在Unity Hub中新建了此版本的3D项目后,会自动打开Unity编辑器,其默认的界面布局如图2.9所示。

Unity编辑器的软件界面主要由以下部分组成:标题栏、菜单栏、工具栏、层级(Hierar.chy)面板、场景(Scene)面板、游戏(Game)面板、项目(Project)面板、控制台(Console)面板、检视(Inspector)面板。用户可以自行拖拽各个面板,根据自己的需要和喜好进行排列;也可以通过【Window】菜单添加其他面板,如选择【Window】|【AI】|【Navigation】,添加Navigation(导航)面板。下面简要介绍几个主要面板的作用。

图2.9 Unity默认界面布局

1.Hierarchy面板

Hierarchy面板用于显示当前场景中的所有对象,包括:摄像机、灯光、3D对象、UI、SDK组件等,以及各对象之间的父子关系。如图2.10所示为Steam VR开发包中Interactions_Example场景的Hierarchy面板。

图2.10 Hierarchy面板

2.Scene面板

Scene面板用于放置、调整虚拟场景中的各个对象。Scene面板中显示的是项目的虚拟“世界”,也可以理解为一个“舞台”,其中是项目所包含的虚拟世界的布景、演员(游戏角色)、道具等。如图2.11所示为Steam VR开发包中Interactions_Example的Scene面板。

图2.11 Scene面板

在Scene面板的右上角有一个以红、绿、蓝三种颜色显示的立体图标,红色对应X轴、绿色对应Y轴、蓝色对应Z轴。可以通过单击不同的坐标轴以调整场景的查看角度和方向,还可以单击图标下方的【Persp】/【Iso】选项来切换透视/正交视图。此外,还能对视图进行旋转、推近等操作,方法如下。

(1)旋转视图:按住Alt键的同时按住鼠标左键拖动。

(2)移动视图:按住鼠标滑轮拖动。

(3)推近/拉远:鼠标滑轮向上/向下滑动。

3.Game面板

Game面板用于显示游戏最终呈现的内容和效果,相当于玩家实际看到的画面,便于开发者进行测试预览。当开发者单击了“Play”(播放)按钮之后,经过场景中相机渲染后的画面会呈现在Game面板的视图中。如图2.12所示为Steam VR开发包中Interactions_Ex.ample.unity场景运行后的效果。

在Game面板中预览时,可以结合一些快捷键查看,常用快捷键如下。

(1)WASD键/↑↓←→方向键:画面分别向前、左、后、右方向移动。

(2)按住鼠标右键移动:旋转视图。

(3)按住鼠标左键:与游戏对象进行标准交互。

根据开发的应用类型不同,还可以设置Game面板里显示的画幅和分辨率大小。通常,基于VR头显的应用无须设置分辨率,保留默认的“Free Aspect”(等比例显示效果)即可。如果是面向移动端的App,可以在预览时设定相应尺寸,例如设置为1080×1920,如图2.13所示。

图2.12 Game面板运行效果

图2.13 设置预览尺寸

此外,还可以单击Game面板右上角的“Stats”按钮,以了解游戏运行的性能表现,如图2.14所示。

图2.14 Stats功能

图2.15 Inspector面板

4.Inspector面板

Inspector面板,译为检视面板或属性查看器,其中显示了当前选中对象的属性、组件等。在Hierarchy或Scene、Project面板中选中对象后,Inspector面板中会有相应显示。如常用的Transform(变换)属性组,包括Position(位置)、Rotation(旋转)、Scale(缩放)三个属性的参数设置。如图2.15所示为Steam VR SDK里Teleporting对象的Inspector面板,其中Transform为大多数游戏对象都具有的属性组。

5.Project面板

Project(项目)面板用于放置项目中导入的资源以及开发者创建的脚本、材质等内容,如图2.16所示。为了让资源组织有序,通常创建多个文件夹以存放不同类型的资源,如:Materials存放材质、Textures存放贴图,等。

6.Console面板

Console(控制台)面板位于Unity编辑器界面的下方,用于显示编辑器生成的错误、警告和其他相关信息。例如编辑器自动执行的操作、脚本编译错误等,以帮助开发者发现和修正问题,如图2.17所示。

图2.16 Project面板

图2.17 Console面板

开发者也可以使用Debug类将程序运行消息打印到控制台上。例如,可以在脚本中的某处打印关键变量的值,查看它们是如何变化的。

7.菜单栏

Unity的菜单栏中集成了软件的主要功能,不同的Unity版本、不同的项目类型之间可能会有差别,此处以Unity 2021.3.5的3D项目为例。菜单栏如图2.18所示。下面简要讲解各组菜单的功能。

图2.18 Unity的菜单栏

(1)File(文件):用于项目和场景的创建、保存、输出等功能。

(2)Edit(编辑):用于场景内部的编辑设置,如选择、复制、查找、播放等,常用重要功能如Project Settings(项目设置)、Preferences(预设)。

(3)Assets(资源):用于管理游戏资源。包括创建、导入游戏资源、设置属性等。

(4)GameObject(游戏对象):用于在场景中添加和设置游戏对象。其中大部分选项与在Hierarchy面板中右键菜单相同,包括3D Object、Effects等选项。

(5)Component(组件):为开发者提供了便捷的内置系统设置,包括物理、寻路、渲染等方面。

(6)Window(窗口):可以设置编辑器的界面布局,控制各个面板是否显示,以及一些相关功能,如Asset Store、Package Manager、Animation等。

(7)Help(帮助):提供了Unity官方的帮助资源,如Unity Manual(Unity手册)、Scrip.ting Reference(脚本参考)等是非常实用的帮助文档。

如同Gameobject菜单,很多菜单选项在Unity其他面板中可以通过右键菜单获取,因此对于一部分用户而言可能较少直接使用菜单。此外,建议掌握Unity的常用快捷键,有助于提高创作和开发效率。

8.变换工具组

图2.19 Unity工具栏

Unity 2020.x及之前版本的变换工具组位于菜单栏之下,Unity 2021.x及之后版本的变换工具组位于Scene面板中,主要用于实现对场景中对象的方位控制,如位置、旋转、缩放等,如图2.19所示。

(1)View Tool

View Tool(视图工具)主要用于控制Scene面板的视角和视图,快捷键为Q。按住鼠标左键拖动,可以进行视角的平移。Alt键+鼠标左键拖动,可以进行视角的旋转。Alt键+鼠标右键拖动,或滑动鼠标滚轮,可以对场景视角推近或拉远。

(2)Move Tool

Move Tool(移动工具)主要用于调整游戏对象的位置,快捷键为W。选中Move Tool后,可以在Scene面板中单击选中游戏对象,并同时显示该对象的三维坐标轴,如图2.20所示。可以在某个轴向上拖动以单独调整该轴向的位置,也可将光标置于轴心的立方体上进行x、y、z三个轴向的整体调整。当然,若要对游戏对象进行精确定位,也可在Inspector面板中调整其Transform属性下的Position值。

图2.20 游戏对象的三维坐标轴

(3)Rotate Tool

Rotate Tool(旋转工具)用于调整游戏对象在场景内的角度,快捷键为E。如同Move Tool,可以单独调整,亦可整体调整对象的角度。也可在Inspector面板中修改Rotation参数值以精确设置。

(4)Scale Tool

Scale Tool(缩放工具)用于调整游戏对象的大小,快捷键为R。使用方法类似于Move Tool,此处不再赘述。

(5)矩形工具

矩形工具(Rect Tool)方便用户查看和编辑游戏对象的矩形手柄(Rect Handles),快捷键为T。在Unity中,为了便于布局,每个UI元素都以矩形表示,这些矩形可使用矩形工具进行快捷的调整,如移动、缩放和旋转。矩形工具即可用于Unity的2D功能和UI元素,也可用于操作3D对象。

选中UI元素后,可以通过单击矩形内的任意位置并拖动来对元素进行移动。通过单击边或角并拖动,可调整元素大小。在稍微远离角点的位置悬停光标,当光标旁多了一个旋转符号时,可以按下鼠标左键并向任一方向拖动来进行旋转,如图2.21所示。

图2.21 矩形工具的旋转功能

(6)变换工具

变换工具(Transform Tool)可视为移动工具、缩放工具、旋转工具的集成体,快捷键是Y。使用它可以方便地调整对象的位置、大小和角度。

9.Toggle Tool Handle Position/Rotation

Toggle Tool Handle Position(切换工具手柄位置)和Toggle Tool Handle Rota.tion(切换工具手柄旋转)的作用是对游戏对象的定位点进行变换操作。

(1)Toggle Tool Handle Position:具有Center和Pivot两个选项。Center是默认选项,以所有选中对象为整体的轴心点,通常用于大量对象的整体调整。Pivot以最后选中的游戏对象轴心为轴心点。

(2)Toggle Tool Handle Rotation:用于设置物体变换时的坐标参考系,具有Global和Local两个选项。Global表示物体旋转时的坐标轴是世界坐标轴。Local表示物体旋转时的坐标轴是自身坐标。通常在场景中的对象之间有父子关系时,这两个选项会有区别。

除了以上介绍的九个重要版块之外,还有播放控制组、视图控制组按钮以及一些其他面板,由于篇幅原因此处不作赘述,读者朋友们可根据需要查看Unity手册进行了解。