boruis / helloWasm

wasm for cocos2dx

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

经过一段时间的实践和测试,我们团队成功将cocos2dx游戏转换为微信小游戏。这个过程中遇到了不少问题,但我们都已经解决。现在,分享我的经验并开源相关基础转换代码,以便更多的人能够参与进来,共同协作改进,填补漏洞。希望这个仓库能够引起大家的关注,并提供有益的帮助,协助cocos2dx转换为微信小游戏的过程。

该转换方案是受腾讯的unity小游戏转换方案启发,中途也得到了腾讯技术团队的大力支持,在此表示感谢。

解决的痛点:
目前,cocos2dx的老项目想要上架微信小游戏,只能使用cocos creator重新开发。这种方式需要重新招聘开发团队,并且维护两套代码。由于技术方案差别很大,这造成的人力和项目维护成本都成倍增加。

转换思路如下:

1. 编译为webgl。
2. 修改资源加载逻辑,使首包资源优化到4M以下。
3. 适配微信接口。

目前只支持cocos2dx 3.17.2版本的转换,下面是环境搭建流程:
1. 安装emsdk,然后切换到2.0.34版本

2. 安装指定版本cocos2dx 
https://github.com/WuJiayiSH/cocos2d-x

3. 调用编译脚本

python3 wasmtools/buildWasm.py release

4. 新建一个资源服务器,并指向webroot路径,然后使用微信开发者工具打开工程,并修改 js/libs/cocosPlugin.js里面的Module.CNDUrl变量.

为了方便大家交流,可以加qq群: 15973429 

About

wasm for cocos2dx


Languages

Language:C++ 80.5%Language:Lua 8.1%Language:C 4.7%Language:Objective-C++ 1.7%Language:Objective-C 1.6%Language:Java 1.3%Language:Python 0.9%Language:CMake 0.6%Language:GLSL 0.2%Language:Makefile 0.2%Language:JavaScript 0.2%Language:HTML 0.0%Language:PowerShell 0.0%Language:Shell 0.0%Language:AIDL 0.0%