Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

时间:2024-04-03 11:12:20

首先是用来控制背景图移动的脚本。其中用到了一个API:Mathf.Repeat

Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

这个API一般都用于循环移动。

Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

只看定义太抽象了,我们来看看一个Demo。

Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

**************************************************************************************************************************************

然后就是子弹,敌人,障碍物的消除。案例的做法是创建了一个碰撞盒,从盒子里出去的物体都将被销毁,大大提升了性能,但是它频繁的生成销毁,也是很耗性能的!(后面会讲到对象池技术,来进一步减少系统开销。)

Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

再然后就是敌人和障碍物的生成。由GameController开启一个协程来进行随机生成(随机敌人/障碍物(第51行),随机地点(第52行))。对这里的协程调用顺序不清楚地同学可以看一下我这篇博客

https://blog.csdn.net/qq_15020543/article/details/82701551

然后GameController里面还有一些GUI Text方面的逻辑,很简单,这里不再赘述。

Unity官方案例篇:Space Shooter Tutorial全解读(场景的循环以及敌人障碍物的生成)

然后给对应的游戏物体挂上对应的脚本,就可以了。