Unity发布Web之支持手机端

需求:

___ 相信有许多人和小黑一样,会遇到各种各样的难题,这其中就有,Unity发布Web后,在手机浏览器上可运行!!!!!

分析:

为什么会有相关的需求被提出呢? 最大的一个原因:想在手机浏览器中看到3D产物!还有就是一些软件需要对接;

就像小黑最近刚完成的一个对接:与React Native对接,以下简称:RN
小黑用的Unity版本为:5.6.1

前言

  • 一开始的时候,与对方工作人员进行Unity与IOS和Android原生交互,虽说成功了,不过因为包体有些大,最终这条方案被甲方技术Pass掉了。只好换路而行!
  • 于是有了Unity发布为Web,然后对方通过RN软件的webView组件访问该web链接。这样子就能把3D产物在他们的软件中显示出来了。
  • 于是一场没有"硝烟的战争"开始了

开始

一、先发布,后修改

1:发布WebGL

在Build面板选择WebGL,然后在Inspector面板中选择Publishing Settings,因为最终是要在手机浏览器上边使用,所以WebGL Memory Size需要把默认值设置为128,或者更低;

2:打开发布文件夹

然后打开Build文件夹,我们会看到UnityLoader.js文件,使用**Notepad++**打开它,也可以使用记事本或者写字板打开;然后把下图所出现的红框框选代码替换为:

UnityLoader.SystemInfo.hasWebGL?UnityLoader.SystemInfo.mobile?t():["Firefox","Chrome","Safari"].indexOf(UnityLoader.SystemInfo.browser)==-1?t():t():e.popup("Your browser does not support WebGL",[{text:"OK",callback:r}])

替换后,内容为如下图红框框选位置:

然后我们保存,关闭。

3:放到服务器上边然后,通过连接访问

因为是小测试,所以我放到自己搭建的服务器上了。对于一会儿出现的图。。。。请接受我的懒惰,用了和客户对接测试的项目,马赛克很强大!

铛铛铛铛,出现啦。一个可旋转的3D物体在手机上出现了;

二、先修改,在发布

1:编写代码

请大家原谅小黑的懒,?还是在原项目上进行的。
上代码:
该脚本需要放到Editor文件夹下,切记!!!

using System;
using System.IO;
using System.Text.RegularExpressions;
using UnityEditor;
using UnityEditor.Callbacks;
public class PostBuildActions
{
[PostProcessBuild]
public static void OnPostProcessBuild(BuildTarget target, string targetPath)
{
if (target != BuildTarget.WebGL)
return;
var path = Path.Combine(targetPath, "Build/UnityLoader.js");
var text = File.ReadAllText(path);
text = text.Replace("UnityLoader.SystemInfo.mobile", "false");
text = text.Replace("[\"Edge\", \"Firefox\", \"Chrome\", \"Safari\"].indexOf(UnityLoader.SystemInfo.browser) == -1", "false");
File.WriteAllText(path, text);
}
}

2:发布WebGL

接着还是老套路,发布~~ ~

3:在手机浏览器上通过URL链接访问

卡布达~ , 出现吧! 这样子的小黑好怪异的感觉

不过项目在手机浏览器上还是跑起来了,大家看结果嘛!

查看官网

为什么我们要做这些

因为官网给出:

  • 注意,Unity WebGL内容目前不支持移动设备。它可能仍然可以工作,特别是在高端设备上,但目前的许多设备功能不够强大,也没有足够的内存来支持Unity WebGL的内容。由于这个原因,Unity WebGL在尝试在移动浏览器上加载内容时显示了一条警告消息(如果需要,可以禁用它)。

  • 官网说明这边走

好了,今天的知识就分享到这里了

小伙伴,你们get到了么?

接下来我又要分享一些知识了!

分享完毕!

程序的道路上学习永不停止,探索随时进行。
Let’s go. Just do it. We can.

马上国庆节了,先祝小伙伴们国庆节快乐,技术多多长进然后给小黑讲解?
祝我们华锐视点生意兴隆,财源滚滚,越来越好?!最后也祝我们的祖国越发强大?,毕竟我爱她。

Unity发布Web之支持手机端的更多相关文章

  1. EasyDSS高性能流媒体服务器前端重构(六)- webpack-dev-server 支持手机端访问

    很多时候,前端开发的页面,不仅要在PC端测试效果, 还要在手机端测试效果. 在开发阶段, 我们以 webpack-dev-server 来启动浏览器, 打开正在开发的页面. webpack-dev-s ...

  2. web端和手机端测试有什么不同

    面试中经常被问到web端测试和手机端测试有什么相同点和区别呢?现在总结一下这个问题,如有不对敬请指正 web端和手机端测试有什么区别 1.相同点 不管是web测试还是手机App测试,都离不开测试的相关 ...

  3. EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器前端源码重构(六)- webpack-dev-server 自适应支持手机端访问

    关于EasyDSS EasyDSS商用流媒体服务器解决方案是一套集流媒体点播.转码与管理.直播.录像.检索.时移回看于一体的一套完整的商用流媒体服务器解决方案,EasyDSS高性能RTMP流媒体服务器 ...

  4. Box 黑科技 —— 支持手机端反编译 !Box 黑科技 —— 支持手机端反编译 !

    项目地址: Box 文末扫码获取最新安装包 . 前言 有将近一个月没有更新文章了,一方面在啃 AOSP ,消化起来确实比较慢.在阅读的过程中,有时候上来就会陷入源码细节,其实这是没有必要的.刚开始更多 ...

  5. unity 发布web player版,网页打开报Failed to initialize player's 3D settings

    开始时我装的是unity 5.0.0b1,不知道在哪找的这个版本. web player 装的什么版本也忘了. 最后卸载了web player,重新安装web player并另外安装一个unity4. ...

  6. jquery photoClip支持手机端,PC端 本地裁剪图片后上传插件

    支持手机,PC最好的是jquery photoClip插件,下载地址&示例:https://github.com/topoadmin/photoClip demo.html 代码: <! ...

  7. Web Form 取消手机端自动转换

    将项目中的Site.Mobile.Master排除重新发布即可

  8. [Unity菜鸟] Unity发布web后,从HTML调用本地文件

    1. 遇到的问题 从xml读数据,xml的编码用中文就会乱码,改编码格式就调用不了.目前采用默认的ANSI编码. .exe    .txt  .xlsx  .xml  .test Run     √ ...

  9. 【教你zencart仿站 文章1至6教训 高清1280x900视频下载】[支持手机端]

    [教你zencart仿站 第1至6课 高清晰1280x900视频下载][支持移动端] 经过筹备, 我们的课件最终出来了- 我们 zencart联盟合伙人 项目推出的 在线yy同步演示zencart仿站 ...

随机推荐

  1. freeswitch的mod_curl模块

    概述 有时候,我们需要在呼叫的过程中,或过程后调用web api接口. freeswitch的mod_curl模块可以很方便的实现web api的接口调用. mod_curl模块默认不安装,需要进入模 ...

  2. 嵌入式-C语言基础:指针是存放变量的地址,那为什么要区分类型?

    指针是存放变量的地址,那为什么要区分类型?不能所有类型的变量都用一个类型吗?下面用一个例子来说明这个问题. #include<stdio.h> int main() { int a=0x1 ...

  3. Spring Cloud Gateway 使用示例

    Spring Cloud Gateway 使用示例 作者: Grey 原文地址: 博客园:Spring Cloud Gateway 使用示例 CSDN:Spring Cloud Gateway 使用示 ...

  4. AArch32/AArch64应用程序级内存模型(五)

    本文主要为了记录在学习armv8的过程中的一些感悟.由于原文部分章节晦涩难懂,作者参考了网上很多优秀博主的部分章节(可能是直接摘录)并结合自己的理解重新整理了当前这个版本.文中不免有部分章节讲解很浅, ...

  5. css属性样式整合

    font-size 字体大小 常用色值:#000 黑色:#fff 白色:#ccc.#333.#2f2f2f.#666.#ddd 灰色: rgb表示法:color:rgb(255,255,255); r ...

  6. C# Math 中的常用的数学运算

    〇.动态库 System.Math.dll 引入动态库 using System.Math;   Math 为通用数学函数.对数函数.三角函数等提供常数和静态方法,使用起来非常方便,下边简单列一下常用 ...

  7. json与字符串的互转

    在spring框架中当ajax请求需要返回json数据时,我们只需要在@RequestMapping后面加上@ResponseBody,即可为我们返回想要的json. 下面我们讲解json与字符串的互 ...

  8. 多表查询、Navicat软件、PyMySQL模块

    目录 多表查询.Navicat软件.PyMySQL模块 一.多表查询的两种方法 1.准备工作 2.第一种:连表操作 3.第二种:子查询 总结与结论: 二.多表查询练习题 1.课堂多表查询练习题 2.以 ...

  9. Android ViewPager2 + Fragment 联动

    Android ViewPager2 + Fragment 联动 本篇主要介绍一下 ViewPager2 + Fragment , 上篇中简单使用了ViewPager2 实现了一个图片的滑动效果, 那 ...

  10. 【大数据】kafka-02:Kafka Connect内容、原理及使用

    〇.概述 1.常见资料 (1)confluent https://docs.confluent.io/5.4.0/connect/kafka-connect-jdbc/sink-connector/s ...