白鹭引擎正式支持微信小游戏开发

2017-12-28 17:40:43   来源:新浪游戏

  12月28日微信迎来更新,正式上线小游戏,并开放了小游戏开发文档和开发者工具。在微信发布新版本后,白鹭引擎立即添加了对于微信小游戏开发的支持,开发者只需要使用白鹭引擎的最新版本,通过使用白鹭引擎完整工具流,就可以快速创建、开发与发布微信小游戏,而无需过多的关注底层技术细节。

  1。如何创建微信小游戏项目

  (1)创建微信小游戏项目需要您需要下载白鹭引擎最新版本,首先创建一个新的白鹭引擎项目。

  (2)创建项目之后,点击项目设置按钮,将发布平台设置为微信小游戏,并下载白鹭引擎提供的微信小游戏支持库 。

  (3)最后在项目配置中填写 appid,projectname等内容后,点击发布,即可将您的游戏发布到微信开发者工具中

  (4)在发布之后,您可以在到微信开发者工具中预览及调试您的游戏。

  2。如何将现有白鹭引擎项目迁移至微信小游戏

  由于微信小游戏与传统的HTML5游戏的底层机制有较大差异,所以使用白鹭引擎开发的 HTML5 游戏需要一定的开发工作量才能移植为一款微信小游戏。整体步骤分为三步:

  • 将一款白鹭引擎游戏升级至 1.1 版本
  • 将该游戏的发布目标设置为微信小游戏
  • 进行适配性修改

  具体这三步的处理方式如下:

  (1)将一款白鹭引擎游戏升级至 5.1.1 版本

  白鹭引擎 5.1 目前暂不支持使用 egret upgrade 命令进行升级,请您下载 5.1 版本后,创建一个 5.1 新项目,然后将现有游戏逻辑和资源拷贝至新项目中。后续无论是 HTML5 版本,iOS / Android 版本还是小游戏版本,均使用这个新项目进行后续开发。

  如果您的项目使用了 EUI,请将 EUI 的发布模式设置为 commonjs,并修改您的 ThemeAdapter.ts的实现,具体可以参考 5.1.1 版本创建的新项目的实现方式。

  升级至 5.1.1 这一步骤可能占用您大约两小时至两天时间。主要风险在于引擎升级后,也许存在一些渲染错误的 BUG,经过了一个多月的内部测试以及多个开发者团队的反馈,我们已经解决了已知的所有问题,稳定性可以基本保障。但是如果您发现了问题,请及时与白鹭引擎团队联系,并提供可以复现的 Demo,白鹭引擎官方团队会第一时间处理。

  (2)将游戏发布目标设置为微信小游戏

  在执行这一步骤前,建议开发者首先创建一个新项目,并将新项目的发布目标设置为微信小游戏,将其发布并确保可以在微信IDE里正确预览,这样您会对整个项目结构更加熟悉。

  通过白鹭最新的 Egret Launcher ,您可以直接将游戏发布目标设置为微信小游戏,如果您更偏爱命令行的调用方式,可以采用如下的调用方式:

执行上述步骤之后,您可以使用微信开发者工具打开项目,就可以看到您的项目了执行上述步骤之后,您可以使用微信开发者工具打开项目,就可以看到您的项目了

  (3)进行适配性修改

  上述步骤均完成后,您就可以将您的项目迁入微信小游戏中,为了给最终用户提供更好的用户体验,微信小游戏对您的游戏存在一些技术限制,针对微信小游戏现在公布的制作标准其进行改造可能占用您一天至一个星期。具体限制如下:

  • 禁止 eval , new Function 等动态代码加载机制,白鹭引擎的 EUI 使用了这种方式,已经通过将主题文件的发布策略改为 commonjs 进行了规避,如果您的项目采用了上述动态代码机制,需要采用其他方式实现。
  • 微信小游戏没有直接执行 JavaScript 文件的接口,都是通过 require() 方式进行加载,除了禁止动态加载外,require 由于是基于CommonJS 的模块机制,所以不支持全局对象,如果您的项目中存在了全局对象的跨文件访问,需要设置object1 = object1 这样的方式强制将特定对象转为全局对象。由于白鹭引擎的项目会将您的项目所有文件编译为一个文件,所以这种问题主要出现在 main.js 文件与其他第三方库文件之间的全局调用上。
  • 游戏总体积不得大于 4M,目前引擎的体积占用为 800k 左右,目前比较大的占用是生成的 commonjs 格式的皮肤文件,如果您的皮肤文件过大导致体积过大,请等待白鹭引擎后续版本的持续迭代优化
  • 如果您的游戏资源大于4M,可以使用动态加载的机制,动态加载文件的缓存不得大于 50M,如果您的资源总体积可以控制在 50M 以内,只需要将部分资源文件不放置到项目中即可,但是如果总体积大于 50M,您需要设计资源的缓存存储和释放策略。再次强调,代码文件必须放在游戏包中,不可以动态加载。
  • 需要对接微信相关接口,如用户信息、社交关系等,具体请参见微信提供的 API 文档与示例。

  3。后续路线图

  微信小游戏上线或将为HTML5行业带来重要利好,为行业带来机遇与挑战,后续发展有待行业从业者共同探索。白鹭科技作为HTML5引擎研发商致力于为开发者提供更为便捷的开发,白鹭引擎后续会与微信团队进行进一步的技术合作,完善使用白鹭引擎开发微信小游戏的开发体验。主要包含:

  • 将微信的文件读写 API 与白鹭引擎资源管理器进行更紧密的集成。
  • 开发效率与工作流优化。
新浪声明:新浪网登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
精彩推荐
相关新闻
CGWR

中国游戏排行榜(China Game Weight Rank)是由新浪游戏推出的国内最全面、最专业、最公正、最客观的多平台游戏评测排行榜,包含了目前市场上所有的手游、端游、主机游戏、VR游戏、智能电视游戏及H5游戏,力图为中国玩家打造最值得信赖的游戏推荐平台。

评天下游戏、测产品深浅—新浪中国游戏排行榜CGWR!http://top.sina.com.cn

新浪游戏APP
新浪游戏APP为广大玩家提供最及时、最个性化的聚合订阅游戏资讯,以及业内最丰富、最具价值的游戏礼包资源,首测资格、稀有道具,成为高玩就这么简单。新浪游戏APP论坛力求打造一个属于所有玩家的超大朋友圈,为玩家的生活增资添彩。新浪游戏秉承为玩家提供优质服务为宗旨,不断优化创新,让我们一起创造快乐!
新浪游戏
全民手游攻略
全民手游攻略”是新浪游戏为全球手游玩家量身打造的一款手游攻略大全及专业游戏问答社区APP。“全民手游攻略”涵盖Apple Store游戏畅销榜前150名手游,网罗最新手游通关秘,帮助玩家畅玩手游;打造最全手游攻略资料站,帮你用最省钱方式吊打土豪。最火爆专业的游戏问答,让众多大神带你开启不同手游人生,寻找志同道合小伙伴一起并肩作战。
全民攻略

新浪简介 About Sina | 网站地图 | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996-2017 SINA Corporation, All Rights Reserved

新浪公司 版权所有

用微信扫描二维码
分享至微信朋友圈