查看: 1373|回复: 0
打印 上一主题 下一主题

[经验分享] Unity开发:一个PC项目转WebGL遇到的问题解决汇总

[复制链接]
may    

8830

主题

81

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
52336
精华
343

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2018-7-22 01:35:55 |只看该作者 |倒序浏览

这段时间遇到一个PC版本发布WebGL的工程,遇到很多的[color=rgb(85, 85, 85) !important]问题,在这里做下记录。

1.发布报错:程序中出现DLL调用的情况,删除调用DLL相关代码。

2.WebGL无法通过IO流读取本地json文件:改成TextAsset绑定json来读取。

3.原版解析json使用JsonDotNet但是无法在WebGL上使用:使用Unity自带的JsonUtility类进行解析。

4.使用JsonUtility解析时报错:用于解析json的类以及子类需要[Serializable]序列化。

5.解析json时有个别json文件报错:对应的json文件有格式错误,多了逗号,就删除多余的逗号。但是JsonDotNet并没有报错。

6.方向键无法执行相关的步骤:原因是JsonUtility解析的数据与原本JsonDotNet解析的数据有不同的地方,比如JsonUtility解析空数据时List会有实例,但是Count为0,而JsonDotNet解析的时候回没有实例为Null,这样源码有判断是否为Null的时候就出现问题了,解决办法是将JsonUtility解析不同的数据改成原版一样的。

7.点击保存按钮出错:保存使用了IO流,注释掉相关代码,改为临时保存。

8.无法解析二维数组的json文件:JsonUtility无法解析带二维数组的json文件,改成一维数组去解析,解析后一维数组转回二维数组。JsonUtility无法用字典去解析,创建一个解析的数据类,解析完后把数据转换回需要的数据。

9.由于之前删除了绘图插件的DLL,导致无法绘图:使用新的绘图方式替换。



来自: yanis
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-16 07:33 , Processed in 0.180743 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部