Unity全面入门笔记3-Game面板与Hierarchy面板

初识Unity

Game面板

  • Game面板的作用

Game面板是游戏试玩窗口,展示的是游戏中渲染的实际场景。在Game面板中不能直接通过拖动来移动、旋转、缩放物体,也不能在Game面板中直接点击选中物体。

  • 进行试玩

有三个按键是对Game面板进行控制的,他们是:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hDXqem5x-1569680558199)(file:///C:\Users\UPiracy\AppData\Local\Temp\ksohtml10188\wps1.jpg)]

Play按钮:在2 by 3布局下,Game面板会直接进入试玩模式;在default布局下,Scene面板会自动被切换成Game面板,并将进入试玩模式。在试玩模式下不再能使用Unity引擎的快捷键,但可以在Game视图内运行当前关卡。在试玩模式下再点击Play会退出到编辑模式。

Pause按钮:如果在编辑模式下先点击Pause,再点击Play,游戏会在第一帧后暂停,如果在试玩模式下点击Pause,游戏会暂停,暂停状态下点击Play退出试玩模式,游戏会同时退出暂停状态。

Next Frame按钮: 在Play状态下点击Next Frame按钮会自动进入暂停状态,并向后运行一帧,此后每次点击该按钮也会使程序运行一帧,这个按钮的作用类似于断点调试。

  • 调节分辨率

Game面板下的工具栏如图所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1yQWOJ8p-1569680558200)(file:///C:\Users\UPiracy\AppData\Local\Temp\ksohtml10188\wps2.jpg)]

左侧的下拉选项可以选取对应的分辨率,在Free Aspect模式下,分辨率会随着Game面板的形变而自动改变,以填满整个Game面板,修改这个选项可以将分辨率设定为1920x1080等常见的分辨率配置。我们经常在Free Aspect模式下测试游戏UI的自适配功能。

Scale滑动条可以缩放Game视图,注意在这种情况下并不是缩放摄像机,而是缩放像素,所以在放大情况下图像可能显示不清。

Hierarchy面板

  • 树型结构

Hierarchy即树形图,一个场景中的物体是以树形结构储存的。Hierarchy面板中的物体,被称为GameObject。

在Hierarchy中,点击一个GameObject就可以选中这个物体。按住Ctrl键可以进行加选和减选,而按住Shift键点击两个GameObject,可以快速的选中一连串对象。

一些GameObject前有一个三角形标记,点击它就可以展开这个GameObject的子结点。在按住Alt键的情况下点击三角标记,可以展开整个树。

子物体所在座标系是父物体的模型空间座标系,而没有父物体的GameObject,它们所在的座标系是世界空间座标系。当移动、旋转、缩放物体时,它的模型空间座标系跟着进行移动、旋转、缩放,这导致它的子物体也随之移动、旋转、缩放。

使用这一特性的一个实例:在一个RPG游戏中,主角可以更换武器,已经提供了主角的模型和骨骼,以及多个武器的模型,保证每次更换武器,武器都可以准确的放在主角的手上,且主角在运动时武器依然绑定在主角的手上。实现方法是对于每个武器,将一个空GameObject放在武器需要被握着的手柄位置,作为这个武器的轴点,然后在脚本中监控主角的右手骨骼,切换武器时将上述的空GameObject设为右手骨骼的子物体,就可以保证武器在主角播放动画时始终绑定在主角手上。上述脚本的写法将在关于GameObject和Transform的章节中详解。

  • Scene的概念

Hierarchy树的根节点是一个场景(Scene),在下图中,所有GameObject的根节点是Sample Scene。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jN6r1Ksl-1569680558201)(C:\Users\UPiracy\AppData\Roaming\Typora\typora-user-images\1568005100264.png)]

注:虽然GameObject的根节点是Scene,但在脚本中通过transform.parent无法获得Scene对象,如果一个GameObject的父物体不是另一个GameObject,则上述语句返回null,这一点在Transform章节中会重新强调。

并非在所有情况下Hierarchy中都只有一个Scene,如下图中存在三个场景:New Scene 1、SampleScene和MyScene2。但在任何情况下,Hierarchy中都有且只有一个“基场景”,在上图中基场景是New Scene 1,其它场景我们都可以称为“同步场景”。更多关于场景的用法我们将在接后面关于场景的章节中详细描述。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0YHpoqZf-1569680558201)(C:\Users\UPiracy\AppData\Roaming\Typora\typora-user-images\1568005276116.png)]

  • 创建GameObject

在Hierarchy面板中,我们可以创建新GameObject。我们既可以点击左上角的Create菜单,也可以在Hierarchy面板的适当位置点击右键来创建新物体。

在真实的工程中,我们经常在Hierarchy中创建的GameObject如下:

“Create Empty”:创建一个空GameObject,它默认没有任何组件(除了Transform),包括Renderer组件,这表示它不会被渲染,不能附加材质。它的作用通常有两个,一是作为一个座标系,如前文提到的装备武器的场景;二是作为一个文件夹,在创建Prefabs和对场景中的物体进行管理时,将一部分GameObject设为空物体的子物体,以此来将它们在Hierarchy树型结构中隐藏。

“3D Object”->“Cube”/“Sphere”/“Capsule”:创建立方体、球体、胶囊体。一般3D游戏的模型都是由美术提供的,作为程序员我们不需要考虑模型的问题,而这里创建的立方体、球体和胶囊体一般用于制作占位符,在制作原型时顶替将来应该有模型的位置。注意,制作占位符应当将新建的模型作为空物体的子物体保存,这样才方便未来替换美术资源。

”3D Object"->“Plane”/“Quad”:Plane常用作制作地板,而Quad常用作3D游戏中的2D物体(如广告牌和电脑屏幕)。Plane默认的大小是Quad的10倍,Plane默认的正面朝向y轴正方向,Quad朝向z轴负方向。它们都是背面剔除的,即摄像机从背面渲染时会表现为透明。

“2D Object”->“Sprite”:2D游戏中所有的GameObject都应以Sprite的形式实现。

“Effects”->“Particle System”:粒子系统,用于制作特效,将在粒子系统一章中详述。

“UI”:用户界面,细节极多,将在UI一章中详述。

“Camera”:摄像机,将在摄像机一章中详述。

  • 搜索物体

在Hierarchy的搜索框中搜索物体时,除了被搜索到的GameObject外的其他物体都会显示为灰色。如果发现Scene中物体变成了灰白色,请检查搜索框是否已经被清空。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章