本来想边学边写一些Unity2D的教程,但是在 http://www.raywenderlich.com/ 网站上已经提供了更好的选择,而且写的非常详细,这里就略作 一些介绍并记录下学习的笔记,以备忘。
入门篇做的是一个叫做ZombieConga的游戏,主角是一个僵尸他碰到一直小猫就会把小猫变成僵尸并像贪吃蛇一样跟随自己,如果不小心碰到了 老太太那么就会丢失自己捉到的僵尸小猫。截图如下
你可以在AppStore上下载到这个游戏。
教程共5篇
这套入门教程会教会你unity2d各个窗口的使用,基本操作,2d精灵的概念,基本的动画系统和碰撞系统,如何添加声效和简单的滚屏。
进阶篇做的是山寨的Jetpack Joyride , 效果大概这样
教程共3篇
这个教程会让你复习入门篇的部分内容,并学会使用新的知识,比如粒子效果、图层系统、如何制造无限关卡和有景深效果的背景。
比较巧的是unity在4.6版本的时候发布了新的GUI系统,正好学了一下,GUI系统主要用来做菜单用的共3篇教程
Unity打开之后有几个默认的窗口
还有几个没有默认显示但是也经常用到的窗口,在 “Window” 菜单中点击就可以显示了
在unity2d中图片元素都是一个精灵,比如把一张图片拖到Project窗口中的时候,这张图片就自动转化成了unity中精灵,精灵是2d中特有 概念。点击这张图片可以Inspector窗口中查看图片的属性和导入选项。可以发现 “Texture Type” 为 “Sprite(2D and UI)” 。
如果这张图片中包含好多子图,可以通过 “Spite Mode” -> “Multiple” 来设置导入为多图形式,这样可以通过 “Sprite Editor” 对图片 进行分割,切出途中包含的各个子图。典型的包含多个子图的图片(它有个专业称呼叫 SpritePack 精灵打包,把多个精灵打包在一张图片中 内存和性能都会有所提高)。
单个精灵(这样的图片导入模式使用默认的就行了)
游戏对象或者叫游戏物体,他统指游戏中的所有东西,比如游戏中的一个球体、一个人、光源、粒子系统、摄像机等。在2D模式中独有的游戏组件就是精灵(Sprite). 游戏对象构成整个游戏场景。
组件指的是网格、脚本、碰撞、刚体等等东西,他是游戏对象的属性,每个游戏对象都可以设置不同的组件,使这个游戏对象变得丰富多彩, 一个典型的2D游戏对象都拥有这些组件
比如有一个游戏对象你给配置了好多组件,整个过程很复杂,但是每次new一个新的时候都要这么配置一遍,是不是很麻烦,如果遇到这种 情况就需要Prefab功能了,只要把一个已经配置好的游戏对象从Hierarchy或者Scene窗口拖到Project窗口就可以很容易的创建一个Prefab, 这个Prefab拥有之前配置过的所有功能。而在代码中实例化的时候只要很简单的一句话就可以用Prefab复制一个对象出来了。
Object aGameObject = Instantiate(aPrefab);
就是这么简单。
每个游戏对象都可以添加一个或者多个脚本,脚本是游戏灵魂所在,因为你可以在脚本中定义各种行为,控制各种其他组件的变化,从而创建
出丰富多彩的效果。每个脚本都继承自 MonoBehaviour
对象,一个典型的脚本如下
public class NewBehaviourScript : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
这是一个没有任何自定义内容的空脚本,Start()
方法会在脚本开始的时候执行一次,可以做一些初始化的操作,Update()
方法每帧都会调用,是一个周期性调用的方法,可以在这里写一些游戏逻辑。
如果你新建一个场景,这个场景中就会自动包含一个游戏对象—— Main Camera,这个主摄像机主要用来显示Game窗口内容,它所对准的区域都 会显示在Game窗口上,所以通过调整主摄像机的大小和位置就可展示Scene窗口中描述的各种场景了。
2D游戏中都有图层的概念,因为游戏是二维的,如果两个Sprite重叠在一起,就会有谁显示在前面谁在后面,谁遮住谁的问题,所以 图层可以用来控制绘图的顺序和遮罩关系。在”Edit”->”Project Settings”->”Tags and Layers”->”Sorting Layers” 可以配置图层。 默认只有一个Default图层,你可以添加更多的图层。然后在游戏对象的Inspector窗口可以设置对象所在的图层。 如果两个Sprite显示在一个图层里面,还在设置”Sprite Renderer”->”Order in Layer” 设置展示的顺序。
nTop 05 December 2014