1. Unity发布WebGL网页端

Unity发布webGL项目时存在很多的易错点,这些错误点没有统一的规律,因为是跨平台开发,开发过程中需要去解决未知的和已知的报错点,下面就我这两年开发WebGL遇到的问题做一个总结,还有的就是大家常遇到的坑我也进行汇总。

  1. 资源导入 :

关键字:顶点、分辨率;

  1. 发布了WebGL之后,网页运行有时候发现灯光会变暗,因为WebGL不支持实时光照的问题;

解决方法 :所以我们将光照可以做成LightingMap 使用,可以缓 解这一问题。

  1. 一些图片UI会在打包webGL之后在网页中会显示模糊;

解决方法:美术制作UI时候分辨率&比例调整好。

  1. Unity自带的字体,在webGL网页中是显示不出来;

解决方法:手动导入新的字体,比如微软自带的微软雅黑字体。

  1. WebGL的渲染和Unity的渲染差异,部分材质是不可以用的;

解决方法:开发时多做测试,对于显示不出来的材质进行更换&修改Shader。

  1. 尽量避免使用第三方插件(有些插件可以解决Bug或者大大提高效率,我们视情况而定)。

    1. 场景开发:

关键字:优化、插件

  1. Unity自带的视频播放器在开发webGL时候是不能用的;

解决方法:用AVpro视频插件来代替Unity自带播放器。

  1. 场景加载实现异步加载;
解决方法:我们可以通过协程方法来实现异步加载,部分代码:IEnumerator Start() 

{

AsyncOperation scene = Application.LoadLevelAsync("");

yield return scene;

Debug.Log("加载完毕");

}

  1. 对于场景中不同距离的模型我们采用LOD进行场景优化;

LOD:Level Of Details多层次细节,unity中自带的一个组件,在场景中添加&设置即可。

  1. 代码模块 :

关键字:信息传递、减少循环

  1. 在开发过程中由于WebGL的资源限制,我们要和数据库进行数据传输时候不能直接访问数据库;

解决方法:我们可以通过JS作为中转站来访问,我们可以使用

Application.ExternalCall()来调用,可以传递一些参数和信息。

  1. 脚本中不用的代码一定要删除,因为有些代码会产生GC
  2. Getcomponent  Gameobject.find()等这些方法尽量少用,而且千万不要放在Update中循环执行
  3. Update里面的逻辑尽量不要太复杂
    1. 打包设置:

关键字:位置、调试

  1. 在Publishing Settings设置里面找到压缩格式 勾选为Gzip;"Enable Exceptions"是异常捕获的一个开关,开发期间可以打开进行调试,当我们最终发布时候要将这个选为None;
  2. 打包位置要和工程包在同一级;
  3. 打包的每一级目录必须为全英文,不能出现中文;
  4. 打包时候,减少包里程序代码量可以在othersetting中启用Strip Engine Code;
  5. 目前webgl支持的浏览器为火狐、谷歌、Safari浏览器;
  1. WebGL在移动端的应用()

    1. 实现方法:

Unity发布webGL后,很多时候我们需要在移动端展示,此时找到UnityLoader.js文件,做下面的修改即可在手机端打开:

compatibilityCheck:function(e,t,r){

UnityLoader.SystemInfo.hasWebGL?

UnityLoader.SystemInfo.mobile?

t()

:["Firefox","Chrome","Safari"].indexOf(UnityLoader.SystemInfo.browser)==-1?

:e.popup("Yourbrowse does not support WebGL",[{text:"OK",callback:r}])    },

    1. 注意事项:
  1. 当我们在移动端进行三维模型的展示时,我们在开发过程中需要对模型进行三维动画的录制,通过点触屏幕调用方法即可实现,包括三维模型的全景展示、三维模型局部放大展示、信息调用等等,需要注意的是那些需要点击的按钮或者隐藏按钮的坐标问题,因为发布到webGL手机端时,按钮的实际坐标可能会发生变化;

解决方法:使用锚点来做场景的UI部分

  1. 当在手机端打开时,我们要设置webGL自适应屏幕;

解决方法:下面是关键代码

Unity发布WebGL注意事项以及移动端打开webgl网页相关推荐

  1. Unity 发布Android版,通过WPS Office打开word、excel、pdf等进行浏览

    1.确保手机端安装了Wps office. 2.下载Android Studio项目文件,地址https://download.csdn.net/download/weixin_38548431/12 ...

  2. 手机查看电脑端打开的网页

    1.先有vscode编辑器打开网页  使用插件--  Live Server 打开网页后的地址 2.找到ipv4地址 win+r 输入cmd 打开小黑板 输入ipconfig 3.更换域名 把Ipv4 ...

  3. Unity发布WebGl注意事项

    unity 版本是5.5,不过看了2017的文档好像也是差不多,绝大部分都是根据官方文档,希望有帮助,如果有错误或者你知道更多这方面的只是,请告知下,大恩言谢. 1:对webgl发布的工程文件说明 在 ...

  4. unity发布WebGl,Win10搭建IIS服务器,开启本地IIS服务,

    WebGL发布与IIS本地部署 系统: Win10家庭版 Unity版本:2018. 4.31f1 系统: Win10专业版 Unity版本:2021.1.18.f1c1 上面两个版本测试都可以. I ...

  5. unity发布webgl本地搭建服务器

    当我们使用Unity发布WebGL项目的时候直接运行是不允许的,如下图提示: 如果我们没有线上服务器,怎么办?我们可以使用Windows的IIS服务,操作系统:Windows 10企业版G. Unit ...

  6. unity发布webgl 触摸控制和鼠标控制冲突问题解决

    unity发布webgl 触摸控制和鼠标控制冲突问题解决 参考文章: (1)unity发布webgl 触摸控制和鼠标控制冲突问题解决 (2)https://www.cnblogs.com/pz904/ ...

  7. Unity发布WebGL时如何修改默认的载入进度条sf?

    Unity发布WebGL版本后,需要去除Unity的Logo,首先关闭Splash Image去除Made with Unity启动画面(在File->Build Settings->Pl ...

  8. Unity发布WebGL不显示中文字体问题

    在Unity发布WebGL的时候中文不能够显示,主要在于字体的设置,Unity默认的字体是Arial字体 首先想到的是字体类型不对,接下来更换字体 解决方案: 1.在Asset下创建文件夹,Font ...

  9. Unity发布WebGL运行问题

    写在前面 Unity发布到Web平台的项目,在低版本的浏览器中,直接右键本地打开index.html文件,便可打开项目运行,但是升级浏览器后,发现在双击打开项目时,显示网页不支持运行WebGL等错误. ...

最新文章

  1. poj 2063完全背包
  2. Load和Initialize往死了问是一种怎样的体验?
  3. GARFIELD@01-18-2005
  4. VR应用开发遍地走的日子还有多远
  5. 阿里云徐立:面向容器和 Serverless Computing 的存储创新
  6. STM32开发 -- 外部中断详解
  7. 为什么要学习python
  8. 如何动态添加修改删除定时任务
  9. java 面试什么是类_Java 面试题代码类收集
  10. springboot 微服务_使用 Docker 部署 Spring Boot微服务
  11. so baby come on~~
  12. 华为云企业级Redis评测第二期:大Key操作的影响
  13. 微软Skype即将抛弃Windows Phone 8和8.1用户
  14. [swift] LeetCode 695. Max Area of Island
  15. POI:Excel表解析与导出通用工具类
  16. 固态硬盘开卡软件_SATAFIRM S11 MSATA固态硬盘刷固件
  17. mysql驱动5.1_mysql jdbc 驱动 5.1.26 官方最新版
  18. 解决nginx设置反向代理后,css|js|gif|jpg|jpeg|png|bmp|swf等静态资源无法加载
  19. WDM驱动实操No.1
  20. go get xxx timeout

热门文章

  1. git安装与使用详细讲解
  2. Listio官网教程
  3. oracle weblogic开启,菜鸟经验:oracle与weblogic自动启动与停止
  4. antv x6画布内容居中
  5. 暑假好看的日剧来啦~~
  6. 贷后联动管控指标与差异化案件的分配逻辑
  7. 这样设置过渡动画,让你的Android手机变得更丝滑
  8. 备战数学建模40-遗传算法优化bp神经网络(攻坚站4)
  9. 【linux中进程相关的概念分析与总结】
  10. sql 查询 like '%_1%' 的坑