1.软件的安装
Unity3D可以轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,功能非常强大。
最新版下载地址:http://unity3d.com/unity/download
安装完毕会提示用已存在的序列号激活、激活免费版还是激活试用30天的版本,这里选择激活免费版Unity
之后即可成功启动Unity3d,选择Create New Project,勾选需要导入的Packages,再点击Create,即进入了Unity3d主界面:
各个部分的简要说明:
场景调整工具:包括对场景及场景中物体的控制,从左到右依次为:
手柄工具:按住左键拖动改变视角。
移动工具:拖动方向轴移动物体。
旋转工具:拖动旋转轴旋转物体。
缩放工具:拖动可缩放物体大小。
Center:改变游戏对象的轴心点
Local:改变物体的坐标(Local:自身坐标;Global:世界坐标)
游戏控制:游戏的播放、暂停、逐帧播放
层次视图:当前场景的所有游戏对象(GameObject)
场景视图及游戏视图:通过左上角的tab进行切换,场景视图负责unity3d模型、灯光、材质等编辑与展示功能,游戏视图不可编辑,用于渲染场景视图中的景象,为游戏启动后的视觉效果
工程视图:当前打开项目的资源文件夹,存放着游戏所需的所有资源信息
资产清单:工程视图中选中文件的内部资产信息
对象属性栏:显示当前项目所有对象的属性信息
相应快捷键:
Ctrl+1 Scene视图
Ctrl+2 Game视图
Ctrl+3 Inspector视图
Ctrl+4 Hierarchy视图
Ctrl+5 Project视图
Ctrl+6 Animation视图
Ctrl+7 Profiler视图
2.代码的调试
2.1用MonoDevelop进行代码调试:
Unity3D支持编写js和c#脚本,Unity3d的默认文本编辑器为MonoDevelop,MonoDevelop可对程序进行断点调试。
首先我们在工程视图中依次展开Assets->Standard Assets->Scripts。右键点击Scripts->Create->C# Script
Unity自动创建了一个默认名为NewBehaviourScript的脚本文件,接下来把这个脚本文件拖到场景视图或层次视图中的任意物体上,这样这个物体就被赋予了该脚本。接下来保存一下当前场景,双击NewBehaviourScript文件,自动启动MonoDevelop编辑器。启动后MonoDevelop的默认效果如下:
可以看到,Unity中创建的NewBehaviourScript中自动生成了一个继承自MonoBehaviour的类,类中创建了两个方法Start和Update。这些方法即是被赋予该脚本的物体将会执行的方法。Unity中常用的方法及说明如下:
Awake:当一个脚本实例被载入时Awake被调用。所以可以在这个类中完成成员变量的初始化
Start:仅在Update函数第一次被调用前调用。因为它是在Awake之后被调用的,我们可以把一些需要依赖Awake的变量放在Start里面初始化。
Update:当MonoBehaviour启用时,其Update在每一帧被调用。
FixedUpdate:当MonoBehaviour启用时,其 FixedUpdate 在每一固定帧被调用。
OnEnable:当对象变为可用或激活状态时此函数被调用。
OnDisable:当对象变为不可用或非激活状态时此函数被调用。
OnDestroy:当MonoBehaviour将被销毁时,这个函数被调用。
接下来在Start方法中输入一些简单的代码并保存用来测试断点调试功能。
在MonoDevelop编辑器的菜单栏中打开的Run菜单并选择Attach to Process ,选择我们的Unity项目,点击Attach,这样MonoDevelop编辑器就和Unity编辑器互联了。
在MonoDevelop编辑器中增加一个断点,回到Unity中运行游戏,发现MonoDevelop进入断点并监视到i的类型为int且初始值为0:
2.2用Visual Studio 2012进行代码调试:
如果习惯用Visual Studio写代码,要想在Visual Studio中调试代码必须安装Unityvs插件。目前该插件已被微软收购,有两种方式安装:
1去官网下载,地址:http://unityvs.com/
2也可在Visual Studio中点击工具->扩展与更新>联机里搜索该插件:
插件安装好了,接下来在Unity中把脚本的默认编辑器改为Visual Stuido 2012:
导入安装好的VS插件:
这次再双击打开NewBehaviourScript文件,这次启动的是VS了!同样在VS中增加一个断点,点击Attach to Unity,回到Unity中运行游戏,Visual Stuido也进入断点并监视到i的类型为int且初始值为0: