虽然之前做过很多次的Unity开发,但是嘴巴很笨,要把它理论性的说出来总是很难。所以我要总结一下。这篇博客就是来总结Unity的基本概念的,大神绕道:
一、Unity界面简介(Default默认视图)。
(1)层次面板(Hierarchy)——显示、管理场景中的物体对象;
(2)控制工具——操纵游戏对象,测试游戏等;
(3)场景(游戏场景)视图(Scene & Game)——构建游戏的地方;
(4)工程、资源面板(Project→Assets)——显示、管理整个工程的资源;
(5)检视面板(Inspector)——对选中物体/资源/设置进行修改。
1.层次面板(Hierarchy)
层次面板以英文字母顺序罗列当前场景中的所有物体对象(新建场景中默认有一台摄像机)。
2.控制工具
(从左到右依次是:手形工具、移动工具、旋转工具、缩放工具)
◆手形工具(快捷键Q):允许你在场景中导航。通过使用它,我们可以按下鼠标左键来平移窗口。选择该工具,并在点击鼠标左键的同时,按住alt键允许你根据鼠标的移动来旋转场景视图,按住alt键并点击鼠标右键允许你进行视图的放大缩小(滑动鼠标中键可以达到同样缩放效果)。在执行操作的同时按下shift键可以加速对场景视图的变换。
◆移动工具(快捷键W):这是一个选择工具。因此我们可以在场景视图和层次面板中使用它选择物体,当你需要调整物体的位置时,你可以通过移动物体的坐标轴把手来重新放置物体。
◆旋转工具(快捷键E):该工具的使用方法和移动工具一致,我们可以旋转物体上的坐标把手,或者绕特定的轴旋转。
◆缩放工具(快捷键R):该工具的使用方法和移动工具及旋转工具的使用方法一致,它通过移动物体坐标轴把手来调整物体的尺寸大小。
3.场景视图(Scene)
场景视图是你构造和搭建整个游戏工程的地方。你可以在这个窗口中使用透视视角,也可以切换至正交视角。把物体拖到场景视图中或层次面板中,会自动在场景创建该物体的一个实例。场景视图和层次面板之间有着重要联系。
4.工程、资源面板(Project→Assets)
工程面板罗列着资源面板(Assets)文件夹中的文件。每个unity工程都是一个含有三个子文件夹的父级文件夹组成。这三个子文件夹分别是——Assets(资源)文件夹、Library(库)文件夹、Temp文件夹(unity运行时产生的临时文件夹)。
此外,把物体拖动到Assets(资源)面板会自动创建该物体的预制元件。
5.检视面板(Inspector)
你可以把检视面板看作是可以调整物体属性或资源属性的工具。这个概念和Adobe Flash以及AE中的属性面板的概念相似。这意味着,每当你选择不同的物体时,检视面板会显示与之相关的属性。
6.游戏视图
大家注意游戏视图的最上方有三个按键,它们分别是播放(Play)、暂停(Pause)、下一帧(Advance Frame),通过这三个按钮分别可以激活/停止游戏测试、暂停游戏测试、使游戏快进一帧(这个按键功能在今后调试游戏的时候会非常有用)。
二、Unity的几个重要基本概念。
1.资源(Assets)
它们是Unity游戏的重要组成部分。从纹理到3D模型,再到声音特效,它们都是Assets(资源)。这也是为什么在Unity的工程文件中,所有的文件都被放在一个名为Assets的子文件夹中。Assets文件夹中文件的罗列方式和Unity用户界面中Project Panel(工程面板)的罗列是一致的。
2.场景(Scene)
在Unity中,你可以把场景看成是单独的关卡或者是游戏素材聚集的地方。请记住,你只能对当前打开场景进行修改,不可以同时修改两个场景。
3.游戏对象(Game Object)
我们把任何在当前场景中处于激活状态的物体称为游戏对象。当你把工程面板的资源文件,如模型、预制元件拖动到场景中时,它们会变成游戏对象。其它可以通过在层次面板中点击Create(创建)按钮来创建游戏对象。所有游戏对象在创建之初,系统会自动为其创建一个Transform(变换)组件。从这个最基本的组件开始,你将根据你的游戏情景以及所需的游戏功能,为你的游戏对象添加更多的组件。
4.组件(Component)
组件有很多种类别,用来声明物体的行为、外表,以及影响组件的其它方面。通过添加不同的组件,游戏对象将会有不同而功能。Unity中自带的常用组件,如刚体(Rigidbody)组件,再如简单的组件——光源组件、相机组件、粒子系统组件,等等。为了增加游戏的互动性,我们需要编写脚本。实际上,脚本也是组件的一个类别,为对象添加脚本后,检视面板中会自动生成Script(脚本)组件。
5.脚本(Script)
脚本在Unity被当作一种组件,是游戏开发的重要概念。Unity支持三种开发脚本,它们分别是JavaScript、C#、Boo。在我们实验中,将采用C#来编写游戏脚本。对于很多新的开发者来说,在Unity中编写脚本代码是他们最害怕的部分,如果你没有相关编程经验,不用担心,我们将循序渐进地介绍代码的编写,从而让你掌握高效的代码编写方式。
6.预制元件(Prefab)
Unity的开发围绕着游戏对象这一概念展开,为了使得物体能够被重复利用和实例化,Unity允许你把物体保存为资源。当你需要反复使用某一游戏对象时,你可以为这个对象做一个模板——也就是我们所说的预制元件,然后使用预制元件的实例化对象。这样,我们可以对每一个物体进行单独修改,而不会影响其他物体。实际上,预制元件的概念和Adobe Flash中的影片剪辑概念一致,它是一个物体对象模板,我们可以循环使用。
7. 项目(Project)
你当前在Unity中正在开发的东西被统一放在了一个Project中管理。Project包括该项目的所有Assets, Scenes, Game Objects,Components、Prefabs等等。
注意区分project与scene的关系。Project是一个大的资源管理容器,其中可以包括多个scene。每个scene都会引用此project中的资源。在project面板的Asset下就会看到此project所包含的所有scene(三角形的U3D图标)。
注意Unity 3D中的一个Project并不是与一个文件对应,而是与一个文件夹相对应。如果要打开某project,只要在U3D中File—-Open Project---选中其文件夹就可以打开。但是scene是有一个文件对应的,即后缀为.unity的文件,图标就是U3D的图标。你如果打开了一个scene文件,那么整个project也会被打开。