最近在做个飞行射击游戏当练手,顺便熟悉一下ccc3.0的开发流程,大多数飞行射击游戏都有激光炮这种子弹,但看了一些教程,实现效果都是与屏幕方向平行,没有弧度的激光,实现后发现效果没达到自己预期,于是看到了下图这种激光效果(我称为激光鞭),觉得很酷炫,想要着手实现。
希望实现的效果
最终实现的效果
前期调研了一些资料,本来计划使用Graphic组件+shader实现,但因为没有shader基础,放弃了,后来经过cocos论坛的大神指导,尝试使用Line组件来实现这个效果。
肯定有效果更好的实现方式,还望大佬能够继续指点。
注:
1、本次实现未使用到对象池,用对象池对性能优化肯定更好。
一、实现思路
其实实现思路不难,飞机通过发射普通子弹,并收集这些普通子弹的坐标存入数组,将该数组赋给Line组件的拐点参数,使用Line组件绘制激光。