精华内容
下载资源
问答
  • 1.Unity 2020 WebGL Doesn't work Uncaught SyntaxError: Invalid or unexpected token ...unity发布WebGL之后在浏览器运行时出现这个错误,多半是在发布时没有勾选 Publishing Settings->Decompression fallbacks

    1.Unity 2020 WebGL Doesn't work Uncaught SyntaxError: Invalid or unexpected token

    unity发布WebGL之后在浏览器运行时出现这个错误,多半是在发布时没有勾选 Publishing Settings-> Decompression fallbacks

    展开全文
  • unity发布webgl部署本地服务器 这篇文章最后遗漏了把权限赋予进去 在已经编辑的unitywebgl网站上面--编辑权限--安全--选择自己编辑的everyone---确定 就ok了

    原文链接:https://blog.csdn.net/qq_18427785/article/details/108658356

    这篇文章最后遗漏了把权限赋予进去 在已经编辑的unitywebgl网站上面--编辑权限--安全--选择自己编辑的everyone---确定 

    就ok了

    展开全文
  • unity发布webgl的问题

    2017-08-16 11:21:31
    unity发布webgl,网页打开报错 有一个.mem文件找不到 不同的浏览器打开 错误的不一样,在移动端会有警告 说不支持webgl 但是有这方面的产品 希望有大牛能够提供一个相关的解决方案 在移动端浏览模型 可以有偿 邮箱...
  • Unity发布WebGL网页端 Unity发布webGL项目时存在很多的易错点,这些错误点没有统一的规律,因为是跨平台开发,开发过程中需要去解决未知的和已知的报错点,下面就我这两年开发WebGL遇到的问题做一个总结,还有的就是...

    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自动匹配窗体分辨率响应浏览器调整完整代码 发布WebGL 之前常做windows下运行的项目,最近项目的需求是做Web端B/S架构,所以对Unity发布WebGL进行了简单摸索,在此不多...

    发布WebGL

    之前常做windows下运行的项目,最近项目的需求是做Web端B/S架构,所以对Unity发布WebGL进行了简单摸索,在此不多赘述发布WebGL的步骤,直接从发布WebGL后形成一个index.html文件和一个资源文件夹说起,生成的index.html如下。

    注:本文使用的Unity版本为2018.3.8f

    <!DOCTYPE html>
    <html lang="en-us">
      <head>
        <meta charset="utf-8">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Unity WebGL Player | DigitalTwinsWebGL</title>
        <script src="Build/UnityLoader.js"></script>
        <script>
          var gameInstance = UnityLoader.instantiate("gameContainer", "Build/Bulid.json");
        </script>
      </head>
      <body>
        <div id="gameContainer" style="width: 1920px; height: 1080px; margin: auto"></div>
      </body>
    </html>
    
    

    发布WebGL后用Chrome或者Firefox打开可以发现,网页中的Unity窗体是一个固定分辨率的,分辨率可以在编辑器中的projectsetting修改,也可以用文本编辑器打开index.html后修改,但无论怎么修改,都是一个固定分辨率的,浏览器尺寸调小后Unity就显示不全了。

        <div id="gameContainer" style="width: 1920px; height: 1080px; margin: auto"></div>
    

    自动匹配窗体分辨率

    在网上找了很多相关的方法,好使的并不多,可能是因为我们的Unity版本不同吧,下面方式实测可用。将下面的代码粘贴修改至上面的对应位置即可。宽度99vw、高度98vh正好能够实现Unity窗体布满浏览器而且下面不出现滚动条。

        <div id="gameContainer" style="width: 99vw; height: 98vh; margin: auto"></div>
    

    改了这一条之后,打开发布的WebGl网页时,Unity窗口可以自动调整大小与窗口适配,但是如果打开网页后再修改浏览器窗口大小,Unity还是不会同步调整,如果窗口变小,还是会有部分内容被遮挡。

    响应浏览器调整

    要让unity窗口随着浏览器的调整自动调整,需要为HTML中的onresize事件添加修改Unity窗体的代码。在<body>中增加<script>部分的代码,代码中基于百分比的调整方式,注释中的代码是使用绝对数值的方式,绝对数值方式想要没有滚动条需要减去10-20个像素。

      <body>
        <div id="gameContainer" style="width: 99vw; height: 98vh; margin: auto"></div>
    	<script>
    		window.onresize = adjuest;
    		function adjuest(){
    			var canvas = document.getElementById("#canvas");
    			canvas.style.width = "99vw";  //window.innerWidth + "px";
    			canvas.style.height = "98vh"  //window.innerHeight + "px";
    		}
    	</script>		
      </body>
    

    在网上看了一些教程,也尝试过调整gameContainer(div块)的大小,但是实测完全没反应,可能与平台也有关系,我用的是pc的windows和linux上的Chrome浏览器打开的。如果想要万无一失,可以采用下面的代码

      <body>
        <div id="gameContainer" style="width: 99vw; height: 98vh; margin: auto"></div>
    	<script>
    		window.onresize = adjuest;
    		function adjuest(){
    			var divCon = document.getElementById("gameContainer");
    			var canvas = document.getElementById("#canvas");
    			divCon.style.width = "99vw";//window.innerWidth + "px";
    			divCon.style.height = "98vh";//window.innerHeight + "px";
    			canvas.style.width = "99vw";//window.innerWidth + "px";
    			canvas.style.height = "98vh"//window.innerHeight + "px";
    		}
    	</script>		
      </body>
    

    完整代码

    完整代码如下。

    最好不要直接往自己的工程里面复制,不同工程、不同版本的路径可能都会有不同。最好是只将我上面放的代码放到指定位置,比较靠谱。

    <!DOCTYPE html>
    <html lang="en-us">
      <head>
        <meta charset="utf-8">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Unity WebGL Player | DigitalTwinsWebGL</title>
        <script src="Build/UnityLoader.js"></script>
        <script>
    		var gameInstance = UnityLoader.instantiate("gameContainer", "Build/Bulid.json");
    	</script>
      </head>
      <body>
        <div id="gameContainer" style="width: 99vw; height: 98vh; margin: auto"></div>
    	<script>
    		window.onresize = adjuest;
    		function adjuest(){
    			var divCon = document.getElementById("gameContainer");
    			var canvas = document.getElementById("#canvas");
    			divCon.style.width = "99vw";//window.innerWidth + "px";
    			divCon.style.height = "98vh";//window.innerHeight + "px";
    			canvas.style.width = "99vw";//window.innerWidth + "px";
    			canvas.style.height = "98vh"//window.innerHeight + "px";
    		}
    	</script>		
      </body>
    </html>
    
    

    第一次发,如果有用希望多多点赞转发支持。
    转载请注明出处。

    展开全文
  • Unity 发布webgl 网页自适应

    万次阅读 2017-11-25 19:53:55
    unity 发布webgl后找到index.html然后在 head 里添加 代码 function Reset() { var canvas = document.getElementById("#canvas");//获取#canvas canvas.height= document.documentElem
  • Unity WebGL打包发布时在Building native binary with IL2CPP...报错:Failed running D:DownloadAppsUnity2019.4.8f1EditorDatail2cpp/build/deploy/...
  • unity发布WebGl优化问题

    千次阅读 2019-11-11 17:13:19
    详情参考:https://blog.csdn.net/qq_40229737/article/details/88066562 ... 一、ui大小 1.1分辨率尽量4的倍数 1.2在unity发布webgl时,所有ui的Inspector下Default选择web,其中max Size调成1024,...
  • Unity发布WebGL并部署在IIS上 由于好奇心驱使,最近在研究一些奇奇怪怪的东西,然后发现自己对于Unity编辑器的使用还是了解太少了,也在自己写一些类库,也就是dll,将平时写代码时觉得繁琐的东西封装进去,这样...
  • Unity发布WebGL爬坑杂记(一)

    千次阅读 热门讨论 2019-04-12 10:43:37
    Unity发布WebGL端的项目的坑点比较多,目前的官方资料也很有限,刚开始进攻这个方向所以计划一边开发一边记录。 想要发布WebGL一定要在安装Unity的时候把WebGL的SDK下载上,其他基本没什么需要设置的地方。 WebGL...
  • unity 发布 webgl移动端问题总结

    千次阅读 2019-11-11 19:56:30
    unity webgl 移动端展示问题之前...关于Unity发布webgl应用在Iphone手机加载到最后卡住问题,解决办法是将 Linker Target 设置成asm.js,IOS就可以正常打开了,官方上解释,asm.js对跨浏览支持方面更有,,而之前这一...
  • unity 发布webgl出错

    2021-06-25 16:08:12
    unity项目开始是HGRP的,不能发布webgl,所以就改成普通的;现在打包webgl一直报两个错误; Failed running D:\unity2018.3.1\Unity\Editor\Data\il2cpp\build/UnityLinker.exe -out="F:\RemoveHD\labrary\Temp\...
  • Unity发布WebGL如何把文件下载到本地

    千次阅读 2020-10-24 12:06:22
    Unity发布WebGL如何把文件下载到本地 今天碰到一个需求,发布webgl的工程需要把生成的数据图片下载到本地,资料也查了一些,webgl不支持I/O,所有我在内存中拿到了数据流,发现写不到本地,最后确定了一个方案,也...
  • Unity发布WebGL后跳转页面的问题

    千次阅读 2019-11-15 23:22:42
    Unity发布WebGL后跳转页面的问题 最近在做的一个实验平台的项目,需要自己写一个在线的编译器,但是由于WebGL的特殊性,无法在Unity内部实现这个编译器,然后只能房子啊另一个页面上,用页面跳转来实现,但是遇到了...
  • Unity发布WebGL不显示中文字体问题

    千次阅读 2018-12-29 14:19:30
    Unity发布WebGL的时候中文不能够显示,主要在于字体的设置,Unity默认的字体是Arial字体 首先想到的是字体类型不对,接下来更换字体 解决方案: 1.在Asset下创建文件夹,Font 2.导入你从网上下载的或者本地...
  • Unity发布WebGL爬坑杂记(五)

    千次阅读 2019-09-10 09:41:41
    Unity发布WebGL必然会与Web端有通信,也就意味着要与js脚本有互相调用,这方面Unity官方文档中有相关资料https://docs.unity3d.com/2018.3/Documentation/Manual/webgl-interactingwithbrowserscripting.html ...
  • Unity发布WebGL在新的页面打开网页 mergeInto(LibraryManager.library, { OpenPage: function (str) { window.open(Pointer_stringify(str)); }, }); 将上段代码保存成txt文件,然后将后缀名改为.jslib并放在...
  • Unity发布WebGL下载并修改发布平台修改设置Resoultion And Presentation自定义模板 下载并修改发布平台 菜单栏-File-Build And Setting打开发布界面,如图所示。笔者已经下载了WebGL扩展包,如果没有下载,则会有...
  • 最近因为某项目需要导出网页版本,本想着直接用H5写,但是项目中又涉及到模型部分,想来想去还是决定用Unitywebgl,但是当我发布出来后在本机直接打开index.html,会报以下这个错: It seems your browser does ...
  • Unity 发布WebGL并与JS进行传参交互

    万次阅读 2018-03-06 10:06:50
    Unity发布WebGL后&lt;head&gt;标签中脚本内容为:var gameInstance = UnityLoader.instantiate("gameContainer", "Build/WebGlTest.json", { onProgress: UnityProgress }); 在其后...
  • Unity发布WebGL,起初用的Unity自带的VideoPlayer,发现只有声音,没有画面。后来用的是AVPro Video 【浏览器】要求 说是Google浏览器、火狐浏览器都支持WebGL播视频,但Google浏览器试着不行,一直用的是火狐。火狐...
  • Unity发布WebGL版本后,需要去除Unity的Logo,首先关闭Splash Image去除Made with Unity启动画面(在File-&gt;Build Settings-&gt;Player Settings-&gt;Splash Image-&gt;Show Splash Screen(只有...
  • Unity发布WebGL如何把文件下载到本地——后续,详细实现。前言一、编写jslib二、引入dll,编写C#脚本三、最终效果总结 前言 以前的问题https://blog.csdn.net/Wrinkle2017/article/details/109257197 这是之前的一...
  • Unity发布webgl端时,会出现这样的问题:页面边上会出现滚动条,当我们操作鼠标时,鼠标会带动整个页面滑动,现在我们通过修改样式来解决这个问题,让unity的窗口始终100%填充浏览器窗口,并且不出现滚动条。...
  • Unity WebGL Player | webqiegeji526 <body OnResize="ChangeCanvas()"> <script type="text/javascript"> function ChangeCanvas() { document.getElementById("gameContainer").style....
  • 最近做Unity发布WebGL,访问MySQL数据库时遇到了一些问题,记录一下. 报错 An error occurred running the Unity content on this page. See your browser JavaScript console for more info. The error was: uncaught...
  • Unity发布webgl项目如果字体用的是默认的Arial,则生成的项目中文不显示。 主要原因是字体的问题,解决方法:在unity Assets目录下新建Font文件  打开我的电脑 C:\Windows\Fonts  ...
  • unity发布WebGL输入中文

    千次阅读 热门讨论 2020-06-09 10:13:53
    P.S. 使用默认字体发布webgl后都不会显示,这里主要解决发布网页输入框输入不了中文问题。 发布WEBGL输入中文样例 提取码:ir2x
  • Unity发布WebGL网页版

    千次阅读 2019-03-29 11:03:03
    WebGL工程选项允许Unity以JavaScript程序形式发布使用HTMl5技术和WebGL渲染API、在网页浏览器中运行的Unity内容。为了构建和测试WebGL内容,在“Build Player”窗口中选择WebGL构建目标,并且点击“Build & Run ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,488
精华内容 1,795
关键字:

unity发布webgl