点击上方亿元程序员+关注和★星标

引言
哈喽大家好 ,不知道小伙伴们最近有没有关注到一个名叫《逃离鸭科夫》的游戏。
这款游戏 在各大社交平台和游戏社区都成为了热门话题,Steam平台上的同时在线人数一度突破30万,其口碑表现也相当出色。
在累计一万七千多条玩家评价中 ,收获了96%的压倒性好评,整体评价明显优于今年发布的多数新作。
其中 更为炸裂的信息,开发这款游戏的团队仅仅只有5个人。

除了 有常规的3D美术 和数值策划 外,还有3个神人:
- 负责 游戏设计、战斗编程以及基础美术的制作人。
- 负责 游戏内大部分编程的游戏主策。
- 负责 游戏内所有美术资产的校招生。
更想不到的是 ,如此精简的团队,打造出的游戏,仅仅2 周时间,收获1个亿,远高于团队预期。
那么问题来了,鸭科夫如此成功,我们可以做一个"鸡科夫"吗?
这个问题还是交给小伙伴们吧,笔者实在是折腾不起,但是呢,我们可以定个小目标,做个简单的小东西起步。
言归正传 ,本期笔者介绍一下如何在Cocos游戏开发中,制作类似逃离鸭科夫中的激光瞄准器!
本文源码和源工程在文末获取,小伙伴们自行前往。
什么是激光瞄准器?

激光瞄准器是一种安装在武器(如枪支、弓箭等)上的装置,它发射出一束低功率的、可见或不可见的激光束,在被瞄准的物体上投射一个光点,提示使用者弹着点(即子弹预计会命中的位置)。
制作原理

在Cocos游戏开发中,激光瞄准器的制作方法有不少,包括但不限于以下几种:
- Line组件。
- 自定义Shader。
- 粒子系统。
本期我们主要演示Line组件的使用。
Line组件
Line组件 用于渲染3D场景中给定的点连成的线段。
Line组件 渲染的线段是有宽度的,并且总是面向摄像机,这与billboard组件相似。

Line组件的使用非常简单,我们重点关注他的:
positions: 每个线段端点的坐标。width: 线段宽度,如果采用曲线,则表示沿着线段方向上的曲线变化。color: 线段颜色,如果采用渐变色,则表示沿着线段方向上的颜色渐变。
激光瞄准器制作实例
下面跟随这笔者,一起在Cocos游戏开发中实现一个激光瞄准器。
1.资源准备
老生常谈,有美术搭子的找美术搭子,没有美术搭子的找AI搭子。
笔者拿出做例子最爱的小鸡,本期我们叫他"鸡科夫"。

2.Line组件
新建 一个节点,绑定一个Line组件,设置一下线的宽度和颜色,坐标我们在代码中动态设置。

3.写代码
首先 声明一个ChickenKF类并挂在Canvas上,绑定好Line组件 、鸡科夫 和摄像机。

然后监听一下鼠标事件,按下时显示激光,移动瞄准,抬起时关闭激光。

通过鼠标事件和射线检测,确定激光的方向和目标。

计算 出来激光的起点和终点,对Line组件 的positions进行赋值。

4.效果演示

结语
逃离鸭科夫之所以能够成为爆款,并非偶然,它源于对游戏的热爱、对玩家的重视以及对游戏的执着,因为他们"听人劝吃饱饭"。
假如我们完整复刻出来一个"鸡科夫",它会如愿成为爆款吗?
评论区说出你的看法。
本文源工程 可通过私信 发送 ChickenKF 获取。
我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。
AD:笔者线上的小游戏《打螺丝闯关》《贪吃蛇掌机经典》《重力迷宫球》《填色之旅》《方块掌机经典》大家可以自行点击搜索体验。
实不相瞒,想要个赞 和爱心 !请把该文章分享给你觉得有需要的其他小伙伴。谢谢!
推荐专栏:
点击下方灰色按钮+关注。