Unity WebGL:本机部署,运行到手机

Unity WebGL

简单介绍一下Unity WebGL的技术方案,在WebGL平台出包后,Unity的运行时C/C++代码是通过Emscripten编译成了WebAssembly/Wasm;游戏逻辑部分的C#代码是先通过il2cpp转成C++再编译转成的Wasm,Unity程序就就可以在支持WebAssembly的浏览器中运行了。图形部分使用WebGL做适配,目前Unity 2022默认出包WebGL 2.0版本,API对应OpenGL ES 3.0,功能基本可以匹配。

在本地数据访问、网络支持方面WebGL平台有明显差异,需要额外支持补充,这里不多做介绍。

打包

Unity安装WebGL模块,切换平台后,就可以打包进行测试了。Build And Run执行后,就可以自动打开浏览器运行了。

本机部署服务器

Unity自动部署的服务只能本机访问,想要进行移动端快速测试就很不方便。这里有个很简单的方法,可以快速进行本地部署,同局域网内访问。

💡 电脑主机和手机需要在同一局域网内,或者电脑主机可以被外网访问。

使用步骤

  1. 安装Visual Studio Code

  2. 安装Live Server插件

  3. 使用VSCode打开WebGL输出的目录,创建.vscode目录,并在里面创建settings.json文件。

  4. 创建HTTPS证书

    1. macOS/或者WSL,Terminal执行命令;按提示输入密码和基础信息

      csharp 复制代码
      openssl genrsa -aes256 -out localhost.key 2048
      openssl req -days 3650 -new -newkey rsa:2048 -key localhost.key -x509 -out localhost.pem
    2. Win,安装OpenSSL,执行上述命令。

  5. 填写setting.json 输入刚才生成的证书和key,以及密码,例如:

    csharp 复制代码
    {
      "liveServer.settings.port": 7777,
      "liveServer.settings.https": {
        "enable": true,
        "cert": "/Users/makaka.org/Documents/bitbucket/sensor-camera/build_webgl/localhost.pem",
        "key": "/Users/makaka.org/Documents/bitbucket/sensor-camera/build_webgl/localhost.key",
        "passphrase": "123456"
      }
    }
  6. 在VSCode中点右下角Go Live按钮,浏览器就会自动打开我们的WebGL App了。

  7. 电脑查看本机ip地址,然后手机上访问 https://yourpcip:7777 即可。

💡 注意

  1. 因为ssl的证书是我们本地创建的,不被浏览器认可,如果弹窗安全提示我们选择继续访问。

  2. Live Server不支持压缩设置,WebGL出包时,在Player Setting/Publish部分将压缩方式选择disable

相关推荐
玖玥拾4 小时前
Unity3D RPG 入门项目(四)背包拖拽、物品悬浮提示、项目开发思维
3d·unity·游戏引擎
xcLeigh8 小时前
Unity基础:Start与Update方法——Unity脚本生命周期初探
java·unity·游戏引擎·教程
郝学胜-神的一滴10 小时前
[简化版 GAMES 104] 现代游戏引擎 05:游戏引擎世界构建核心机制深度解析
c++·程序人生·unity·游戏引擎·计算机图形学·opengl
松树戈1 天前
godot项目【宝石捕手】04~添加音效、记分
游戏引擎·godot
AI_AGENT_DEV_AI1 天前
数字孪生项目的开发
webgl
LONGZETECH1 天前
无人机实训高成本痛点解法:虚拟仿真实现 70% 耗材损耗下降
大数据·算法·unity·架构·无人机
五仁烧饼2 天前
Unity Addressables 静默资源策略
游戏·unity·addressables
ue星空2 天前
【Godot】更换编辑器外观主题
编辑器·游戏引擎·godot
fanfan_hongyun2 天前
unity 与cad 坐标系映射
unity·游戏引擎
supermapsupport2 天前
SuperMap GIS 基础产品 FAQ 集锦(20260807)
webgl·supermap·idesktopx