WebGL方案接入流程
收藏
我的收藏文档说明:本文档描述使用Unity开发的游戏,在WebGL平台下,使用SC方案接入抖音小游戏的接入方法及可能遇到的问题。
环境
目前 WebGL iOS 方案支持 Unity 2019.4.xx 和 Unity2021.3.xx;
安装好 Unity WebGL 平台,即能够切换到如下所示的平台(构建工具在构建时也会切换):
构建
自测
在构建完成会,Build目录下会存在一个文件夹(以工程根目录名称命名)和一个zip包,如下图:
在webglexamle目录下,会有一个index.html文件,可以通过启动http服务在浏览器中打开网页。
启动http server的方法比较多,如果电脑上安装有python,可以执行python命令来启动http server。
Python3版本:
python -m http.server -d index.html文件所在的目录路径 8080 (端口号随便定,有效就行)
Python2版本:
cd index.html文件所在的目录路径 python -m SimpleHTTPServer 8080 (端口号随便定,有效就行)
如果没有安装Python环境,这里也提供一个启动http服务的工具:
Windows版:
Mac版:
将工具下载下来后,在命令行中执行命令:
chmod +x ./http-utils # Windows下不需要执行这一行 # Mac下执行 ./http-utils -dir index.html文件所在的目录路径 -port 8080 (随便定) # Windows下执行(可以手动拖动http-utils.exe文件到命令行窗口) .\http-utils.exe -dir index.html文件所在的目录路径 -port 8080 (随便定)
后在浏览器中输入地址:http://127.0.0.1:8080 (最好也在手机浏览器里打开测试一下,手机浏览器输入电脑实际ip地址。)
看能不能在浏览器中运行起来。如果运行不起来,打开开发者工具,看下日志输出,打开浏览器开发者工具(Windows版Chrome浏览器快捷键:ctrl + shift + i。Mac 版Chrome浏览器快捷键:cmd + option + i)。
果浏览器中看出有类似这样的日志输出(目前排查下来,可能是安装的Unity WebGL版本有问题):
如果用的是Unity2019.4.8版本,出现上面的问题,可以下载下面这个压缩包,Unity安装目录下的一个modules目录替换下(除了重新安装Unity WebGL版本和替换这个modules目录外,暂时没找到比较好的解决方法)。
Mac系统找到下面这个目录:
/Applications/Unity/PlaybackEngines/WebGLSupport/BuildTools/lib/modules
Windows系统找到这个目录:
\Unity安装目录\Editor\Data\PlaybackEngines\WebGLSupport\BuildTools\lib\modules
替换完成后,再重新编译WebGL版本,再尝试在浏览器中运行,看是否还会出现上面的错误。
注意:在浏览器下无法测试广告能力,广告功能只能在抖音下运行
发布
测试
- •iOS版本测试:从 Apple Store 中下载最新版本的抖音(确认抖音版本号 >= 17.7.0)。
- •Android版本测试:安装最新版本抖音(确认抖音版本号 >= 19.0.0)。
使用 StarkSDKTools 发布工具工具生成二维码,用抖音 (iOS版) 扫码即可运行。
运行成功的话,可以看到屏幕右下角有一个按钮【vConsole】,这个按钮是一个日志显示的入口,只会有测试环境会出现,主要方便测试阶段排查问题。线上版本不会出现这个按钮。
FAQ
- 1.目前Unity编译出来的WebGL版本默认不支持中文,需要单独放一个中文字体库。
可以自行找一个喜欢的并支持中文的字体库。也可以下载下面这个中文字体库:
- 2.WebGL不支持动态库,如有使用so,需找到webgl版本替代。
- 3.同上,WebGL不支持SQLite数据库,可以使用iBoxDB替代。
- 4.支持C源码的原生插件
- 5.支持C#插件
- 6.iOS上运行WebGL发热比较厉害,建议限帧运行。Application.targetFrameRate 建议值为22~30之间。
- 7.WebGL2.0支持情况:iOS支持15.0及以上系统,Android WebGL2.0支持。
- 8.iOS 下录屏:不建议使用。(判断平台,只在android下录屏分享)
- a.会有录屏权限提醒;
- b.对性能有消耗。
- c.iOS14.0系统以下不支持录屏
- d.如果判断性能比较富裕,就是想要开启ios的录屏,那么iOS14.0及以上系统需要添加录屏白名单。