Phaser.js 11周年

原文地址

我们在下面 Bens 的"A Week in the Pixel Mines"条目中全面了解了新的 Phaser 渲染器,但更"正常"的开发日志本周已被搁置,以便为一些稍微不同的内容让路。

因为今天,Phaser已经11岁了!哇!祝我们生日快乐!

这几乎是一个早熟的青少年:)

我真正想在新网站上做的一件事是将所有 Phaser 开发日志收集到一个位置。这就是我们所做的!在此之前,开发日志分布在 Patreon、我的 WordPress 博客、Google 邮件列表和 GitHub 上。经过大量工作、节点脚本编写和无数导入错误后,我们将它们全部收集到一个地方。总共有惊人的294个!我现在正在输入另一个,所以 295 :)

让我们来回顾一下这些年来的一些亮点。

它是如何开始的

2013 年的今天,我向 GitHub 发布了 0.5 版本,并发布了第一个 Phaser 开发日志。在其中,我讲述了 Flash 游戏库 Flixel 给我带来的启发,以及我如何想将其带到网络上。 Phaser 就是结果。第二天,Ilija 发表了一篇帖子,其中展示了他的 Phaser 标志和角色草图。

2013 年 6 月末,我即将发布此开发日志中的 1.0 版本。在这里,您可以真正感受到事物是如何组合在一起的。新的功能不断涌现,结构也日渐巩固。

4 个月后,Phaser 1.1 发布了。在 Dev Log 6 中,我显然对事情的进展感到满意:)并且您可以看到 Phaser 流行的开始:数百个示例、完整的 API 文档等。

v1.0 发布后不久,v2.0 就出现了。这对于 Phaser 来说是一个巨大的变化,因为它在内部集成了 Pixi,为其提供了 WebGL 渲染支持,您可以在 Dev Log 12 中感受到这一点的重要性。我们在 Phaser v2 的整个生命周期中一直使用 Pixi,这是一个富有成效的成果关系。大多数人可能都知道,我们为 Phaser 3 构建了自己的 WebGL 渲染器。原因是 Pixi 上的开发确实陷入了停滞。 Goodboy 太忙于客户工作,以至于在 Phaser 不断成长的时候,Pixi 已经退居二线了。我常常想知道,如果 Pixi 当年跟上我们的步伐,会发生什么 - 我们今天会使用由 Pixi v8 提供支持的 Phaser v8 吗?谁知道 :)

2014 年 6 月,Apple 在 iOS 上的 Safari 中放弃了 WebGL 支持。这在当时可是一件大事啊!这就是我在开发日志 15 中介绍它的原因。

到 2015 年 1 月,我们开始了新 Phaser 3 渲染器的第一次迭代工作。这是由 Pete Baron 构建的,您可以在开发日志 19 中找到详细信息。整个 2015 年,您可以看到我们正在发布更多产品并致力于 Phaser 3 的发展。

2016 年,Phaser 3 的进展稳定且一致。除了 v3 之外,我还不断更新 Phaser v2 并发布新的教程和插件。 Phaser Patreon 此时正在运行,您可以看到它对我将更多时间投入 Phaser 工作的能力的影响。这是非常富有成效的一年!最后我建议我们应该将 Phaser 3 重命名为 Lazer。那是一段奇怪的时期,我在年底的 Dev Log 97 上结束了这一切。

Phaser 3 的开发持续了整个 2017 年,正如您在这些年的开发日志中看到的那样!发生了一些关键事件,包括获得 Mozilla 的资助以及大量的 Beta 版本。到 2018 年初,我们已经非常接近发布了,但我一直在期待 - 正如您可以在开发日志 151 中读到的那样。即使 v3 尚未发布,我也已经在计划如何通过添加 3D 并转向 ES6 来改进它!

最后,在开发日志 158 Phaser 3 中发布了!哦,哇,工作量太大了。事实上,Phaser 的每个部分都从头开始重写,有些甚至多次重写。花了好几年才发布。事后看来,花了太长时间。它太雄心勃勃,我们试图做太多事情。新的 API 花了数年时间才"稳定下来",并修复了许多错误。如今的 Phaser 3 与 2018 年的情况截然不同。它更加成熟,并且经过了实战考验。

v3.0 发布一年多后,我在开发日志 214 中写了有关 Phaser 4 的文章!墙上的油漆还没有干,我就想把婴儿和洗澡水一起倒掉,然后用 TypeScript 重新编码。这张插图中的宇宙飞船概括了这一切:

在整个 2019 年开发日志中,您可以看到 Phaser 4 的大量研发进展以及 Phaser 3 的持续发布。然后,在 2020 年,那场小流行病袭击了世界。随着 Phaser 3.24 和更多 Phaser 4 更新的发布,开发工作仍在继续。

可以肯定地说,回想起来,到 2021 年底和 2022 年上半年,我已经彻底精疲力尽了。这反映在这段时间开发日志的数量上。从 beta 4 版本 3.60 到 beta 17 版本已经过了整整一年。随着时间的推移,开发日志变得越来越大、越来越深入,例如开发日志 270,同时还必须处理一些悲惨的个人新闻。

Phaser 4 并没有取得任何进展,因为我想我已经意识到,实际上,重做一遍是一个非常愚蠢的想法。它只会进一步分散用户群。因此,我搁置了这个想法,并开始研究 Phaser 3 如何从 Phaser 4 代码中受益。

我在研发过程中学到的许多新技术都反馈到了 Phaser 3 中,体现在 v3.60 版本(以及后续的 3.70 和 3.80)中。老实说,这些感觉像是我们所拥有的功能最丰富、最稳定的 Phaser 版本,您可以清楚地看到我对 Dev Log 275 的进展感到满意。

最近怎么样

然后,2023 年 12 月 18 日,在 Dev Log 285 中,我谈到了与 OCV 组建 Phaser Studio Inc 的事情。

有了大量资金,我开始在我周围招募一个团队,从那时起我们就一直在全力以赴!情况与一年前的这个时候截然不同。 Phaser 很稳定,我们正在围绕它构建出色的工具,开发人员正在用它发布令人惊叹的游戏,老实说,未来是光明的。

回顾过去,我确实可以看到过去的一些关键时刻我应该采取不同的做法。但没有人是完美的,事后看来是 20/20。我当时做出了最好的决定。现在团队就位后,我们将做出我们能做出的最佳决定。

我们的路线图上有一些非常令人兴奋的事情,我们将在未来几周内开始揭晓更多内容。所以请继续关注,事情将会变得更加令人兴奋:)

相关推荐
丁总学Java16 分钟前
微信小程序-npm支持-如何使用npm包
前端·微信小程序·npm·node.js
懒羊羊大王呀27 分钟前
CSS——属性值计算
前端·css
无咎.lsy1 小时前
vue之vuex的使用及举例
前端·javascript·vue.js
fishmemory7sec1 小时前
Electron 主进程与渲染进程、预加载preload.js
前端·javascript·electron
fishmemory7sec1 小时前
Electron 使⽤ electron-builder 打包应用
前端·javascript·electron
豆豆2 小时前
为什么用PageAdmin CMS建设网站?
服务器·开发语言·前端·php·软件构建
twins35203 小时前
解决Vue应用中遇到路由刷新后出现 404 错误
前端·javascript·vue.js
qiyi.sky3 小时前
JavaWeb——Vue组件库Element(3/6):常见组件:Dialog对话框、Form表单(介绍、使用、实际效果)
前端·javascript·vue.js
煸橙干儿~~3 小时前
分析JS Crash(进程崩溃)
java·前端·javascript
安冬的码畜日常3 小时前
【D3.js in Action 3 精译_027】3.4 让 D3 数据适应屏幕(下)—— D3 分段比例尺的用法
前端·javascript·信息可视化·数据可视化·d3.js·d3比例尺·分段比例尺