分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
这是一个横版射击游戏。 教程来自:
http://pixelnest.io/tutorials/2d-game-unity/ 中文版教程:
http://www.litpo.com/category/易学的教程/
教程文章已经详细地介绍实现过程,这里就不再复述,只做一些简单的笔记记录,以供备忘。
1.创建第一个场景
新建工程。接着在"
Project"面板上创建如下文件夹:
接着在" Hierarchy"面板上创建多个空对象,形成以下结构:
接着在" Hierarchy"面板上创建多个空对象,形成以下结构:
这些空对象的
Position保持为(0, 0, 0)即可。保存场景,名称为"
Stage1"。
2.添加显示背景
将背景图片放入"
Textures"文件夹,确认这张图片的纹理类型,即"
Texture Type"属性为" Sprite",如下图所示:
在场景中添加一个Sprite游戏对象,设置其" Sprite"属性为刚才导入的背景图片。重命名这个对象为" Background1",将其移动到" Level -> 0 - Background"里面,设置其" Position"为 (0, 0, 0)。接着添加背景元素。导入平台图片到 " Textures"文件夹,选中" platforms"图片,设置其" Sprite Mode"为" Multiple",然后点击" Sprite Editor",如下图所示:
在场景中添加一个Sprite游戏对象,设置其" Sprite"属性为刚才导入的背景图片。重命名这个对象为" Background1",将其移动到" Level -> 0 - Background"里面,设置其" Position"为 (0, 0, 0)。接着添加背景元素。导入平台图片到 " Textures"文件夹,选中" platforms"图片,设置其" Sprite Mode"为" Multiple",然后点击" Sprite Editor",如下图所示:
在弹出的"
Sprite Editor"窗口中,进行绘制每个平台的包围矩形,以便将纹理分割成更小的部分。然后分别命名为"
platform1"和"
platform2",如下图所示:
创建一个新的 Sprite游戏对象,设置其" Sprite"属性为" platform1"。再在创建新 Sprite对象, 设置其" Sprite"属性为" platform2"。将它们放置到" 1 - Middleground"对象里,并且确认它们的Z坐标为0。将这两个对象从" Hierarchy"面板拖动到" Project"面板下的" Prefabs"文件夹,保存成预制对象。接着,为了避免显示顺序问题,修改下游戏对象的Z坐标,如下所示:
创建一个新的 Sprite游戏对象,设置其" Sprite"属性为" platform1"。再在创建新 Sprite对象, 设置其" Sprite"属性为" platform2"。将它们放置到" 1 - Middleground"对象里,并且确认它们的Z坐标为0。将这两个对象从" Hierarchy"面板拖动到" Project"面板下的" Prefabs"文件夹,保存成预制对象。接着,为了避免显示顺序问题,修改下游戏对象的Z坐标,如下所示:
Layer | Z Position |
0 - Background | 10 |
1 - Middleground | 5 |
2 - Foreground | 0 |
此时,点击"
Scene"面板上的2D到3D视图切换,可以清楚看到层次:
3.创建主角和敌人
导入主角图片 到 "
Textures"文件夹,创建一个Sprite游戏对象,命名为"
Player", 设置其"
Sprite"属性为刚才导入的主角图片。将此对象放入"
2 - Foreground"层里,设置其
Scale为 (0.2, 0.2, 1)。接着,为主角添加盒碰撞体组件,点击"
Add Component"按钮,选择"
Box Collider 2D",设置其
Size为 (10, 10),虽然这还是大于实际的区域,但已比图片小多了,如下图所示:
(可以通过按住Shift键,来调整绿色碰撞范围)
接着,再为主角对象添加"
Rigidbody 2D"刚体组件,现在运行可以看到如下结果:
可以看到主角往下落了,这是因为刚体带有重力,但在这个游戏不需要用到,将" Gravity Scale"属性设为0即可。另外,不想因为物理而引起的主角旋转,则将" Fixed Angles"属性勾选上。完整的设置如下图所示
可以看到主角往下落了,这是因为刚体带有重力,但在这个游戏不需要用到,将" Gravity Scale"属性设为0即可。另外,不想因为物理而引起的主角旋转,则将" Fixed Angles"属性勾选上。完整的设置如下图所示