【问题标题】:Is there any way to split data files into smaller chunks in Unity WebGL builds?有没有办法在 Unity WebGL 构建中将数据文件拆分成更小的块?
【发布时间】:2023-02-16 14:01:13
【问题描述】:

我受限于“Build\application.data”文件可以构建的 Web 应用程序的大小。 也就是说,如果它超过一定大小,我无法将其上传到某些主机、github 等。 理想情况下,我想将应用程序拆分为一定大小的多个数据文件,同时应用程序仍然可执行。

这怎么可能?这是我可以从 Unity 构建配置中做的事情吗? 我可以在构建完成后执行吗? 我可以通过零压缩将文件分割成块,并以某种方式仍然从浏览器执行它吗?有一个名为 Build.Loader.js 的文件,是否可以为此目的对其进行编辑?

这是为了在上传应用程序后使用它,而不是共享它,我不想将它压缩到单独的档案中,或者使用 gitlfs,我已经测试过这个应用程序不能在浏览器中使用 github和混蛋。

谢谢

【问题讨论】:

    标签: unity3d webgl


    【解决方案1】:

    Unity 有 2 种分割数据文件的技术:

    1. Asset bundle

      AssetBundle 是一个存档文件,其中包含特定于平台的 非代码资产(例如模型、纹理、预制件、音频剪辑和 甚至整个场景),Unity 可以在运行时加载

      1. Addressbles

      可寻址资产系统允许开发人员请求资产 通过它的地址。一旦资产(例如预制件)被标记 “可寻址”,它生成一个可以从中调用的地址 任何地方。无论资产位于何处(本地或远程),系统 将找到它及其依赖项,然后返回它。

      这两种技术都会创建单独的文件,您可以将这些文件托管在服务器上并根据需要下载。 Addressable 是 Unity 团队推荐的一种较新的技术。

      捆绑包的总大小可能会增加,但用户将只能下载必要的资产,用户的数据量可能会减少

      如果您不使用 Unity 解决方案,您可以将数据文件分成多个部分。但在客户端 (javascript),您需要下载所有部分,连接它们并传递给 Unity 加载器。您可能无法在 ,nynkb 中使用浏览器的内置 gzip(不确定)。好像挺难的。

    【讨论】:

      猜你喜欢
      • 2021-10-18
      • 1970-01-01
      • 1970-01-01
      • 2021-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-03
      • 1970-01-01
      相关资源
      最近更新 更多