Unity5.3.3 webgl 注意
来源:互联网 发布:织梦淘宝客模板 编辑:程序博客网 时间:2024/05/21 03:58
浏览器支持:
Mozilla Firefox 42,Google Chrome 46,Apple Safari 9.0,MS Internet Explorer 11,MS Edge 13
Safari不支持全屏
Chrome需要大量内存解析js代码,可能导致内存不足
IE11号称支持,但是太慢,导致webgl基本不可用
减小发布包的大小
尝试发布空场景,发布文件的全部大小接近6M。。太大了。其中js代码文件xxx.jsgz4.6M。。
优化png文件之类手段并不能减少发布包大小,因为unity最后实际使用的是自己的内部格式。
删除没用的资源也不行
使用Asset Bundle,而不是Resource,可以减少首次下载包的大小。这些其实web player时代就已经是这样了。
打包Asset Bundle的时候使用LZ4压缩格式。webgl不支持多线程,lzma压缩的bundle会导致主线程解压缩时的卡顿。
使用纹理压缩(DXT(Desktop platforms) or PVRTC),在webgl中使用Crunch压缩选项。压缩网格(mesh)和动画(Animation)
不要引用System.dll 和 System.Xml.dll,尽量少用第三方dll
尽量只用.Net 2.0 subset API
设置Edit > Project Settings > Player > Other Settings中的Strip Engine Code为选中,不发布无用的代码。在使用asset bundle的时候,选中此项可能会导致有些用户代码被跳过,从而在加载asset bundle的时候出现Could not produce class with ID XXX的错误。可以在项目中增加link.xml文件,强制unity包含指定类。如下:
<linker>
<assembly fullname="UnityEngine">
<type fullname="UnityEngine.Collider" preserve="all"/>
</assembly>
</linker>
Publishing Settings 中的Enable Exceptions popup为None,如果不需要处理异常。
设置memory size为合适的大小
在发布对话框中设置优化等级为fastest
正确配置web服务器,在 http 协议层使用gzip压缩
其他
webgl不支持movietexture,可以用HTML5 video element实现
wengl对GLSLS shader的限制比OpenGL ES 2.0更多
webgl不支持使用用户本地字体,字体必须包含在unity项目中
webgl不支持IP socket,包括C#的Socket库和UnityEngine.Network。可以用WWW。unity提供一套支持webgl的网络API,也可以用javascript的websockets自己实现。
webgl对unity音频API有大量限制
在大部分浏览器中,webgl后台运行时的更新频率会下降到每秒一次
wengl中,gc(垃圾回收)只能在每帧结束后进行,因此下面的代码会导致内存耗尽:
string hugeString = "";
for (int i = 0; i < 100000; i++)
{
hugeString += "foo";
}
- Unity5.3.3 webgl 注意
- 基于Unity5 WebGL平台发布的Assetbundle工作流程以及优化简谈
- 【Unity3D 5.6版本使用(2)】Unity5中WebGL平台封装的一些技巧 (转载)
- WebGL
- WebGL
- WebGL
- webGL
- WebGL
- 关于unity3d发布WebGL出错需要注意的问题
- unity5.3.3 no pc,mac&linux standalone
- WEBGL & WebGL Extension
- 【WebGL】WebGL概述
- 【WebGL】WebGL入门
- 【WebGL】hello WebGL
- 由Unity5.3.3f1引发的一场血案
- Unity5 AssetBundle
- Unity5烘焙
- unity5阴影
- MusicBee 歌词插件(基于QQ音乐API)
- [ELK] Nginx 监控
- 抽象类和接口
- 8_1 C语言 | 编译原理
- 多态 & 深入探索C++模型
- Unity5.3.3 webgl 注意
- java 冒泡排序程序
- 宏和函数的区别(C语言)
- 排序算法---归并排序
- Kaggle竞赛记录
- Spring4mvc Controller Service map转json json转string
- mysql-mysqlbin-log,独立表空间开启
- Socket多客户端通信
- java 二分法查询