快讯
《权力的游戏》最终季首发预告短片 2019年四月首播
21分钟前
王思聪!欠我的一万块钱什么时候还给我?
27分钟前
中国10月原油进口大增31.5%,日均131.6万吨创新高
32分钟前
淘票票进驻饿了么、淘宝 协同阿里生态挖掘增量
33分钟前
深大附中:家校共育托起学生成长
34分钟前
第二十届高交会正式启幕罗湖展团21家明星企业齐亮相
34分钟前
大学迎“双11”后快递高峰,大学生网购不手软,平均收包裹近10个
35分钟前
西咸新区公安局组织开展高考居住资格审查工作培训
36分钟前
《明日之后》总体不错,我还是选择了退坑,这几点不改游戏要凉
36分钟前
短线的生命线“10日均线”,掌握买入就涨,卖出就跌!
36分钟前
前方报道!11月13日,汉诺威畜牧展(EuroTier)看点大搜集
36分钟前
《堡垒之夜》国服坐冷板凳的原因是这几点,你知道吗?
37分钟前
比《明日之后》好玩的末日游戏来了,11月15日开测!
37分钟前
最后的贡献!人人网6000万美金卖身多牛传媒
37分钟前
2018年高中高校对接峰会暨北理莫斯科大学中学校长论坛隆重举行
38分钟前
踩雷平台启动身份权益确认,跟你有哪些关系?
38分钟前
英国高中留学,选择哪类课程好?
38分钟前
看尽众生千百态,负增长阴影下的广州车展要凉?
38分钟前
人人公司:6000万美元出售人人社交网络全部资产丨大众计划开启5000万辆电动车生产计划
39分钟前
新君说事丨我不想缴纳社保,自愿放弃缴纳社保,可以吗?!
39分钟前
股票交易学课堂:所谓会炒股,就是守纪律
39分钟前
Rookie被玩坏,感受钢牙女装的肉鸡,网友:你们是魔鬼!
41分钟前
敲重点!看贾跃亭演讲稿的正确打开方式
41分钟前
风波之中的银隆面临着技术路线选择的问题
41分钟前
英国高中申请人上升,为什么英国高中越来越受到中国学生的关注
41分钟前
丰富产品线 捷途X70S将于广州车展预售
42分钟前
寻找增量市场:很可能被低估的趣头条
42分钟前
Uzi提名年度最佳选手 G2爆冷击败RNG也提名了
42分钟前
微信请假领导没回,女子出国玩5天归来被开除?法院这样判决……
43分钟前
2019年度哈尔滨市城乡居民医保集中缴费12月20日截止 如何缴费看这里
43分钟前

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

转载 2017-12-28 18:38:06

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

2003404101

微信

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

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

1

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

2

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

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

4

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

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

l  将一款白鹭引擎游戏升级至 5.1.1 版本

l  将该游戏的发布目标设置为微信小游戏

l  进行适配性修改

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

(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)进行适配性修改

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

l  禁止 eval , new Function 等动态代码加载机制,白鹭引擎的 EUI 使用了这种方式,已经通过将主题文件的发布策略改为 commonjs 进行了规避,如果您的项目采用了上述动态代码机制,需要采用其他方式实现。

l  微信小游戏没有直接执行 JavaScript 文件的接口,都是通过 require() 方式进行加载,除了禁止动态加载外,require 由于是基于CommonJS 的模块机制,所以不支持全局对象,如果您的项目中存在了全局对象的跨文件访问,需要设置 window.object1 = object1 这样的方式强制将特定对象转为全局对象。由于白鹭引擎的项目会将您的项目所有文件编译为一个文件,所以这种问题主要出现在 main.js 文件与其他第三方库文件之间的全局调用上。

l  游戏总体积不得大于 4M,目前引擎的体积占用为 800k 左右,目前比较大的占用是生成的 commonjs 格式的皮肤文件,如果您的皮肤文件过大导致体积过大,请等待白鹭引擎后续版本的持续迭代优化

l  如果您的游戏资源大于4M,可以使用动态加载的机制,动态加载文件的缓存不得大于 50M,如果您的资源总体积可以控制在 50M 以内,只需要将部分资源文件不放置到项目中即可,但是如果总体积大于 50M,您需要设计资源的缓存存储和释放策略。再次强调,代码文件必须放在游戏包中,不可以动态加载。

l  需要对接微信相关接口,如用户信息、社交关系等,具体请参见微信提供的 API 文档与示例。

3.后续路线图

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

l  将微信的文件读写 API 与白鹭引擎资源管理器进行更紧密的集成。

l  开发效率与工作流优化。


相关文章

{{news.title}}

{{news.author}} {{news.timeFormat}}

正在加载......