当前位置:游戏 > 程序开发

如何使用Unity制作2.5D游戏(2)

来源:游戏邦 编辑:tina 发布时间:2012年03月22日

免责声明:火星网文章来源于作者原创或整理自互联网,仅为提供更多信息,不代表火星时代同意其观点或描述,版权归原作者所有,如需转载,请联系原作者并注明出处,如涉及作品内容、版权或其他问题,请及时与我们联系,我们将在第一时间予以更改或删除,感谢您的理解和包容!

作者:Marin Todorov

这是关于使用Unity开发一款简单的2.5D游戏教程的第二部分内容。

在第一部分教程中我们解析了Unity的使用基础并基于C#语言编写了脚本。我们创造了一款简单的游戏,即你控制着一架能够来回穿梭的飞机并向鲨鱼投射炸弹,以此保护小丑鱼。

在本篇教程的这最后一部分中我们将进一步扩展游戏并完成最后的润色。即我们将添加一些音效和音乐,整合游戏逻辑,并添加更多不同的游戏场景。

如果你未拥有之前的内容,你可以使用我们在教程1中所完成的项目,并在Unity中打开这一内容。你点击Scenes\LevelScene条目,便能够打开之前的场景。

接下来让我们开始更深入地学习Unity并进一步完善游戏!

为游戏添加视觉效果

可能已经发现,当炸弹击中鲨鱼时,它只会安静地消失,而这会让你感到“并不有趣!”

所以我们便决定创造水中爆破场景!

在菜单中选择“GameObject/Create other/Particle System”,屏幕上便会出现一个颗粒系统。在“等级”面板上将名称从“颗粒系统”改为“爆炸”,并将爆炸位置设为(1,1,8)。

现在你如果已经是颗粒系统专家,可以打开“检查器”自己进行设置,或者你也可以遵循我们的方法轻松地进行设置。将以下数值复制在“检查器”中:

在这里最重要的属性便是“One shot”,当你在这一选项中打勾时,系统将只会发射出一次粒子,也就是说只会出现一次爆炸。接下来让我们设置动画中的数值,即尝试着去匹配下图中的颜色(如果你没有执行这个步骤也没关系):

在这里,“Autodestruct”是一个很重要的属性,当我们再也看不到活跃的粒子时,被选中的颗粒系统将从场景中消失。而这也是我们想要创造出的效果,就像自动垃圾回收一样。

现在你便创造了一个小型的爆破场景,随后你就需要像之前在创造炸弹时那样,制作一个预制件(并在需要时实例化),让它在完成场景后自动毁灭。

右击“项目”面板的“预制件”文件夹,选择“Create/Prefab”,并将其重命名为“ExplosionPrefab”。从“等级”中将“爆炸”对象拖到新的“ExplosionPrefab”文件夹中。右击“等级”中的“爆炸”并选择“删除”。

右击“项目”面板并选择“Sync MonoDevelop Project”以打开MonoDevelop。加载编辑器BombClass.cs并添加以下代码:

//right under definition of “ySpeed”

public GameObject explosionPrefab;

//inside OnTriggerEnter, right after Destroy(this.gameObject)

Instantiate(explosionPrefab, transform.position, Quaternion.identity);

然后再回到Unity,在“项目”面板中选择“BombPrefab”,这时候你将能够在“检查器”中看到新属性“ExplosionPrefab”。从“项目”中将“ExplosionPrefab”拖到新属性区域中你便算完成了设置。

现在点击播放,你便能够看到炸弹撞击鲨鱼时的爆破。

Unity 2.5D 教程