如何制作出一款塔防游戏
现在非常流行的Moba游戏LOL和王者荣耀,其实他们都是在塔防游戏的基础上做了改进的
但是还保留有塔防的一些元素,比如小兵,炮塔,基地等。唯一不同的是,我们可以控制我们的英雄,这就比单纯的塔防游戏有趣多了。
我这里也写了一个3D塔防游戏的案例。完整的塔防游戏。

这个案例既然是完整的,那就包含塔防游戏该有的元素和不该有的元素。比如,UI,创建炮台,炮台AI,怪物AI,升级炮台,出售炮台...
大体说下制作的流程吧。首先做最简单的,怪物的生成及移动,我把他们做成了预制体,随机种类生成。没难度。

然后创建炮台就是射线检测,这个没什么说的,也很简单。然后就是炮塔的AI了,炮塔的AI思路我是用的触发器来做的。
当有触发器进入时就放入集合,当有触发器出去就移除,当有怪物死亡时,就移除它。上代码:

核心点就是炮塔AI了。其他的没什么难度。在这里说下炮塔选择怪物的逻辑。
它会从进入范围的所有怪物中选择离它最近的,然后就攻击它,直到它出了范围或者死亡,炮塔才会继续下一轮的选怪。
选择方法我用的是直接排序,直接排序的好处就是能快速得到极值(最大值/最小值)。
这个demo大家如果有需要的,可以找我