42
回答
高手问答第 187 期 —— 白鹭引擎架构师带来的微信小游戏开发技巧分享
【腾讯云】学生服务器套餐10元/月 >>>   

2017 年 12 月 28 日,微信发布了小游戏。2018 年 1 月 15 日微信小游戏预告将全面开放,未来面向企业和个人开发者开放,进一步助推小游戏行业走向成熟。

依靠着最大的中文即时通信社交 App 这个平台,我们相信小游戏将会衍生出巨大的产业价值,而且随着移动互联网的广泛普及,微信小游戏会凭借这种新的游戏形式迅速占领用户的移动设备。

不妨大胆预测,小游戏的时代来了。

那么对于开发者而言,微信推出小游戏意味着什么?我们认为这既为开发者带来了机遇,同时,开发者也会遇到许多急需解决的技术问题。

因此,开源中国社区邀请到了白鹭引擎首席架构师王泽,以“微信小游戏开发技巧分享”为主题,为广大开发者带来了为其一周(1 月 31 日 — 2 月 6 日)的高手问答活动,期间王泽老师将会解答开发者在微信小游戏开发过程中遇到的技术难题,并就微信小游戏开发进行相关的技术分享。

本期高手问答主题

  • 微信小游戏技术架构
  • 白鹭引擎如何实现对微信小游戏的支持
  • 白鹭引擎的项目结构、构建原理
  • 调试技巧
  • 注意事项

或有其他关于微信小游戏开发的问题,也欢迎大家积极提问!

微信小游戏简介

2017 年 12 月 28 日,微信上线小游戏并开放了小游戏开发文档和开发者工具。目前微信官方对于小游戏的定义:小游戏是小程序的一个类目,它即点即玩,无需下载安装,体验轻便,可以和微信内的好友一起玩,比如 PK、围观等,享受小游戏带来的乐趣。

白鹭引擎对微信小游戏的技术支持

白鹭引擎(Egret Engine)是一款同时支持 TypeScript,JavaScript 和 ES6 语言开发的开源免费 HTML5 2D 引擎。

在微信发布新版本后,白鹭引擎立即添加了对于微信小游戏开发的支持,开发者只需要使用白鹭引擎的最新版本,通过使用白鹭引擎完整工具流,就可以快速创建、开发与发布微信小游戏,而无需过多的关注底层技术细节。除了引擎技术支持,白鹭对微信小游戏的支持还包括了工作流支持、在线技术支持、文档支持。

高手嘉宾简介

王泽,北京白鹭时代信息技术有限公司白鹭引擎首席架构师。目前主要聚焦于 HTML5 游戏引擎开发、TypeScript 以及 WebAssembly 技术相关的研究与实践工作。

在问答期间,王泽老师会每天关注广大开发者朋友的提问,及时为大家解答微信小游戏开发过程中遇到的问题。

为了鼓励大家踊跃提问,@局长 将会在问答活动结束后挑选 10 位幸运用户,赠予由白鹭科技独家定制的公仔一个(见上图)。

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就微信小游戏开发方面的问题向王泽老师@王泽_egret 提问,请直接回帖提问。

举报
局长
发帖于4个月前 42回/4K+阅
共有42个答案 最后回答: 3个月前

@王泽_egret    egret目前游戏引擎 的开发与调试是分离的。。。未来有没有可能在egret wing里面集成微信小游戏的调试?

--- 共有 1 条评论 ---
王泽_egret我们的设计目标不是在 Wing 里集成对小游戏的调试,而是在 Wing 里进行代码编辑,然后直接在微信开发者工具中调试,这样做的原因是微信小游戏 IDE 中包含一些独有的接口(比如微信的文件系统,微信的用户接口等)是无法在 Egret Wing 中模拟的。我们接下来会进一步的完善开发和调试的支持,主要是加快 egret build 之后,微信开发者工具的响应速度 4个月前 回复

@王泽_egret 之后会不会把引擎打包,提供桌面程序exe打包呢?我想把游戏投稿到Steam上

--- 共有 1 条评论 ---
王泽_egret您可以使用 Electron 来把白鹭游戏发布为一个PC的exe文件,但是我们没有对 Steam 提供支持,这个我们可以接下来评估一下 4个月前 回复

@王泽_egret  支持一下,白鹭引擎真的很棒,小学生正在研究当中...  最近H5游戏以及玩一玩、微信小游戏挺火的目前我也有研究厘米秀(玩一玩),厘米秀提供广播机制以及帧同步机制但是测试一直遇到问题调试特别不容易,有相关的文章参考吗?而H5游戏以及微信小游戏都得自己开发消息同步机制,如果您来开发消息同步机制你会选择那种语言呢? C?C++?Java? PHP? 有入门到精通的书籍推荐吗?

还有一个问题,目前的发布流程略显麻烦,未来有没有可能会简化发布的整个流程?谢谢

--- 共有 1 条评论 ---
王泽_egret您可以具体说一下么?现在的发布流程其实很简单呀,就是执行一下 egret publish 就可以了,请问您觉得麻烦的是? 4个月前 回复

@王泽_egret H5游戏中的适配如何做?我一般就是修改index.html中的data-scale-mode的参数,但是感觉适配好像没有这么简单。

--- 共有 1 条评论 ---
王泽_egret如果您使用的是 ShowAll 这种模式是比较简单的,但是微信小游戏中不支持这种模式,推荐使用 FixedWidth,这种模式的宽度是固定的,但是高度不是固定的,需要您在游戏中对高度进行手动适配或者使用 EUI 的自动布局功能 4个月前 回复

@王泽_egret白鹭引擎5.1.0+的版本中对资源加载这块改动很大,为什么这样子改?新的方式较原来的方式有什么提升?感觉新版本中加入了 asyn这种函数 ,学习难度会不会变大呢?

--- 共有 1 条评论 ---
王泽_egretasync / await 是我们新引入的语法糖,但是旧的方式也是完全兼容的,您仍然可以使用旧方式来做 4个月前 回复
顶部