Unity Hierarchy视图介绍
题外话:写文章的习惯又兜兜转转捡起来了,希望能帮到更多人吧。。
1.Hierarchy视图总述
- 如图所示,打开新的Unity项目or创建一个新的Scene时,默认的Hierarchy窗口视图;
- 该窗口会列出当前场景中所有游戏对象;
- 通过任意途径添加or删除游戏对象时,这些游戏对象也会在Hierarchy窗口中展示和消失。
2.父对象和子对象
- Unity使用一种**“父子关系”**的概念,来管理不同层级下的游戏对象;
- 如图所示,Obj1是Obj2的父对象,Obj2是Obj3的父对象,Obj2和Obj3都是Obj1的子对象;
- 而Obj1和Obj4是同级关系,所以他们之间不存在任何父子关系。
3.为什么要有父对象和子对象?
- 方便开发者管理
- 举个最简单的例子,超市的所有商品都是分门别类进行摆放的,难以想象让你在一个乱七八糟的超市里找到一罐番茄味的薯片是多么的费力(哦~我的上帝啊),实际工作中Hierarchy里面会有非常多的对象,所以要分类存放。
- 啊?你问为什么是番茄味的?因为我喜欢~嘿嘿
说明:啥?Unity里面居然可以使用中文?害,当然可以,但还是推荐你使用英文,否则可能出现一些奇奇怪怪的bug~
- 减少代码量
- 再举个例子,地上有个每60s自动生成的血包点,每次玩家吃掉血包你都要从场景中删除这个对象实在是浪费性能,所以通用的做法是隐藏该血包,到时间再展示出来;
- 问题来了,血包根据策划的需求可能是由非常多的小组件构成的,不一定是单独的一个游戏对象;
- 如果你用一个对象存放了所有的血包组件,那么隐藏整个血包一行代码即可;
- 如果你很不幸的让血包组件们都作为同级的对象放在场景中,那么很遗憾,有多少个组件你就需要多少行代码。
说明:你会发现,只要隐藏了父对象,子对象都会随着父对象消失在场景中,非常好用~
4.右键菜单栏
- Copy&Paste:复制&粘贴;
- Rename&Delete:重命名&删除;
- 着重说下Duplicate:
- 虽然中文翻译是“复制”但实际上与Copy不同,Duplicate是把复制=>粘贴整个步骤都一次性完成了;
- 正确食用方式是:在Hierarchy视图中,右键某个对象,然后点击Duplicate;也可以左键某个对象,然后Ctrl + D;
- 效果:在与被复制的游戏对象的同一层级,复制并粘贴一个游戏对象。
- Select Children:帮你选中该对象下的所有子对象;
- Select Prefab Root:帮你选中该对象对应《预制体》的根对象;(不会有人不知道预制体是啥吧?去查啊!)
- Create Empty:创建一个空对象;
- 3D Object:创建3D对象,里面有很多基础的形状;
- 2D Object:创建2D对象,同上;
- Effect:创建特效(各种英雄的技能效果展示就是这玩意);
- Light:各种光源(光虽然很重要,但初学者后续接触的不会很多,慢慢来);
- Audio:声音;
- Video:视频;
- 着重说下UI:这里面聚集了几乎所有你制作游戏UI所需要的组件,也是日后工作中最常接触的功能,后面有时间会逐个讲解。
- Camera:摄像机(为啥会有摄像机?你问导演,你问电视机,你问手机相册,好好想想就不难理解摄像机的存在)
5.小眼睛和小手
说明:该功能会影响游戏对象在场景中的,是否可见&是否可被选择功能。鼠标悬停在某游戏对象上即可展示两个图标。
- 小眼睛
- 点击后,你会发现场景中,该对象及其所有子对象都消失了;
- 注意啊,仅仅是视觉上的消失,是便于你开发用的功能,对实际游戏展示没有任何影响。
说明:注意Game视图昂,没有消失~这是开发中可能用到的功能。
- 小手
- 点击后,你在Scene视图中,将无法选中该游戏对象;(但是在Hierarchy里面是正常的)
- 相对的,在该游戏对象后面的物体,会优先被你选中。
说明:诶~我后面还藏了个球(狗头)
6.左上角的加号
- 你看这个碗他。。。咳咳,走错片场了,你看这个菜单他熟不熟?前面介绍过的呀~这里我就不讲了啊,我能卖你生瓜蛋子吗?
7.搜索框
- 在搜索框中输入你要寻找的游戏对象名称,如果找到了,就会在Scene视图中以原本的颜色展示出来,其他不符合条件的对象会被置灰白展示。
说明:图中间如果白了一条,是录制软件的锅,推荐实际操作一下。