一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第5天,点击查看活动详情。
我一直有个这样的疑问:已知市面上游戏引擎很多,游戏引擎到底是啥?
从一个前端的角度,我惊讶的发现现在有很多使用js语言的游戏引擎,那不得上手试试?!在我经过几天的时间实际操作后之后——
我先试用了一个很古早的游戏引擎 GMP,它很简单,mini包就16KB大小。但缺点是很早(2010年)就停止维护更新了,而且功能过于简易,不符合我妄图创造一个高大上游戏的需求。而且最重要的一点是,因为他太古早了,找到的帮助文档也很少,所以在简单尝试过后就放弃了。
考虑到帮助文档的重要性,我把目光投向了国内,发现咱们国内做这个的还真的少,只看到一个阿里开源的hiho游戏引擎Hilo (hiloteam.github.io),但是实现的功能太少了,感觉就是给淘宝的双11活动做的那种小游戏,而且感觉兼容性不太好,要知道js游戏引擎最响亮的口号可是多端兼容,但就连官网给的一些小游戏案例都出现了不能打开的bug……这个东西真的有人维护吗?弃之。
气馁之下一顿搜索,筛出来两个比较可靠的——
- cocos 2d x
- phaser
cocus是个享誉国内外的游戏引擎,3d做的很出色,而新的2d引擎支持js语言,而且国内的文档也较为完善,了解引擎 · GitBook (cocos.com)。我感觉如获至宝,但看了一会文档发现,如果使用这个引擎,最开始搭建开发环境就很复杂,不满足我三五天内建造一个游戏的愿景,劝退……
最后终于它来了————
phaser!最开始吸引我的,是国内有个大佬自建了网站翻译了一系列文档,还自制了很多教程Phaser小站 (phaser-china.com),得益于他的一系列文章,我无痛入门了phaser,可以说没有他可能我的尝试js引擎之路就放弃了。
phaser是一个国外的js游戏引擎,经过我几天的试用之后,发现他国外的受欢迎程度非常高,YouTube上可以找到一堆教程,就连国内,由于大佬的贡献和带动,感觉也不是一片荒芜的境地。但我发现大佬的一系列文章都相对较早了,大约产出时间在18年左右,使用的是phaser2版本。但由于原游戏开发者的勤奋更新,以及开源社区的推动,最新的大版本已经出到phaer4了,甚至支持typescript!连官网上的入门教程都用的是phaser3,本着用新不用旧的原则,我也跟着用phaser3。
几天体验下来的感受就是文档很完善,但怎么说,毕竟是国外的游戏引擎,国内相关的文章教程和讨论都相对较少。如果真的要开发新颖的,可玩性较强的游戏,就需要自己去翻英文文档,相对来说比较痛苦,而且玩这个的大多是独立开发者,写代码的方式参差不齐,对于纯纯新手来说,有时候连找参考都得综合大量不同的文章才能实现自己想要的效果……
这是我几天下来达成的效果,我本来想做一个能收集物品,有减血和恢复血量体系,解密找到出口的小游戏,但折腾了好几天只实现了行走功能……😅
可以体验一下我现在做到那里了:nmfmn.github.io/
感觉
感觉心很累……phaser3中文文档等同于无,连使用的一些文档都停留在很初级的地步,离想要真正做出游戏还差得远呢。
但好在国外用的真的挺多,页面翻译加查词还是能勉强读懂,就是画的功夫很多。
国内的生态不繁荣,js游戏引擎真的很多还停留在噱头的概念,很多引擎要么年久失修,要么无人问津,要么复杂到需要一个团队才有性价比。少有能独立开发者做出来真正能玩的东西,任重道远吧。