V 站的小伙伴们好,这学期上了一门 Game Engine Development 的课,课程的设置是在写 5 个 game assignments 的过程中不断完善,抽象出自己的 game engine。
在前几天考试结束后,我和另一个同学写完了文档,并发布了我们的 2D Canvas 游戏框架 Zion。虽然我知道目前它还有很多不完善的地方,各种 potential bugs,而且可用性不一定和我们期待的那么好。但是鉴于我们已经在这个框架的帮助下完成了 5 个小游戏的制作,所以我有继续维护、完善下去的信心。
我一直很喜欢一句话,"If You're Not Embarrassed By The First Version Of Your Product, You ’ ve Launched Too Late"。所以在这个节点上我选择了让更多人知道这个项目,而不是担心自己技术上的不成熟会带来某种尴尬。
另外,我在这门课程的学习过程和开发过程中也总结了一些体会和经验,如果你对这方面内容感兴趣,不妨花 5 分钟时间读一读这篇博客:
Building A Canvas Game Engine From Scratch
在这里发帖,最主要的目的是希望得到比我更有经验的前辈的建议和指导。另外,也希望能找到志同道合的小伙伴一起愉快地交流、写代码。
如果看完之后觉得还不错,能给个 star,那就感激不尽啦!
1
batnss 2017-12-08 09:28:17 +08:00 1
支持下
|
2
rekulas 2017-12-08 09:30:30 +08:00 1
老早就看到帖子了 怎么没人捧场啊 我先占座 虽然不用也支持个
|
3
ryuzaki113 2017-12-08 10:29:34 +08:00 1
star 了
|
4
ResidualSoils 2017-12-08 11:08:51 +08:00 1
已 Star,我实在不敢在 V2EX 上提想要中文文档。
|
5
thomasyim OP |
6
thomasyim OP @ResidualSoils 没什么敢不敢的我觉得,只不过目前阶段想把重点放在可用性和构建这方面上。当然如果有更多小伙伴有这个要求的话,很愿意将它完善下去,包括翻译。
|
7
YyYyYyy 2017-12-08 12:06:41 +08:00
可以问下你上的什么专业有这种课?
|
8
oswuhan 2017-12-08 12:09:36 +08:00 1
态度诚恳必定干货
|
9
ResidualSoils 2017-12-08 12:58:43 +08:00
@thomasyim 支持!
|
10
wxsm 2017-12-08 14:50:15 +08:00
请问:相比现有产品(如 PIXI.js / Egret 等),优势是什么?有调查过吗?游戏引擎是一个对性能特别敏感的东西,请问有相应的介绍吗?
|
11
thomasyim OP @wxsm 感谢你的提问,我觉得你的问题非常好。首先,从背景来看,到目前为止,这个框架是我和一个外国小哥上一门课程和课余投入一定时间的产物,也如我之前所说,必定还很不完善。另外,回答你的问题,诚实来讲,我们对这方面了解甚少,既不是专业的游戏引擎开发人员,也没有投入太多的精力做调研。我写这个游戏框架的初衷和主要目的是想在锻炼自己能力(抽象、组件化)的同时,能写出一个对新手友好的手脚架,和大家一起学习。这个“友好”既体现在“使用”,也体现在“开发”。我相信很多人都能读懂我的源码,正因为如此,这给我们使用这个工具也带来了信心。所以这是我认为最大的优势。
关于性能,我同意你的说法。但是我也同意“过早的优化是万恶之源”。我觉得如果你在开发一款游戏的时候,第一个想法是性能的话,说明思路不是很正确。我当然是希望自己的成果能在各方面都有所突破,但是以我个人的水平,很难考虑到方方面面。性能不是我考虑的首要因素,但是不代表未来不是。 |
13
loadfield 2017-12-08 17:16:40 +08:00 via Android 1
收藏了👍
|
15
HowToMakeLove 2017-12-08 17:36:14 +08:00 2
@ResidualSoils 我来
老板,给我来一份中文文档! |
16
shunia 2017-12-08 18:51:43 +08:00 1
现在市面上的引擎都是基于 webgl 的了,没看到 readme 里有提到这一点.如果基于 canvas 的话,性能问题会导致可能只能做非常轻量级的 h5 游戏(2048 之类).
游戏第一个层面的考量里肯定是包含性能的.如果明知性能不达标,那么肯定会被 pass 掉. 当然更重要的是核心功能的完整度和稳定性,以及相应的工具链是否完善. |
17
shunia 2017-12-08 18:51:56 +08:00
不过能写引擎还是真的挺厉害的,佩服.
|
18
iVanilla 2017-12-08 19:12:06 +08:00 via Android
支持 WebGL 渲染吗?
|
19
thomasyim OP |
21
nofastfat 2017-12-09 11:51:12 +08:00
那我直接推荐 egret,工作流极其完善,注意是极其。性能也不错,支持 canvas 和 webgl 的无缝切换,balabala 各种游戏开发的便捷,就不一一赘述了
|