如何在框架中加载 .glb 模型?

Nic*_*ick 3 three.js aframe gltf

我正在尝试.glb使用该gltf-model组件在框架中加载模型,但出现以下错误;

components:gltf-model:warn Unexpected token g in JSON at position 0

基于此处的文档和此处的讨论我相信我这样做是正确的。请在下面查看我的代码。

  <a-scene>
      <a-assets>

        <a-asset-item 
          id="glbtestmodel"
          src="https://cdn.glitch.com/90a30469-f038-4054-be9c-fd1ec94a810d%2Fkitchentest.glb?1537178470645">
        </a-asset-item>

      </a-assets>

      <a-entity 
          id="glbtest"
          gltf-model="#glbtestmodel"
          position="0 1 -2">
      </a-entity>

    </a-scene>
Run Code Online (Sandbox Code Playgroud)

使用框架 8.2

https://aframe.io/releases/0.8.2/aframe.min.js
Run Code Online (Sandbox Code Playgroud)

你可以在这里看到一个小故障。

我使用Vectary导出模型,gltf从那里导出的模型总是使用与预期相同的技术工作。

作为.glb从 vectary导出的替代方法,我尝试将模型导出为 asgltf然后使用建议的工具转换它们,例如thisthis。结果是一样的。

我以任何方式导出的每个模型,我都使用此 gltf-viewer 工具进行检查,并且没有错误。我打开了文件,它们的2.0格式应该是这样。

为了响应该错误,我还尝试打开.glb文件并修改它以删除初始字符,使其与gltf文件的开头匹配,但它只会产生不同的错误。

这是一个已知的问题?还是我做错了什么?

有问题的模型可以通过上面的代码示例获得,但为了方便起见,这里有一个直接链接

如果您需要我提供更多信息以帮助提供建议,请告诉我。

Die*_*cos 8

使用https://cdn.glitch.com/90a30469-f038-4054-be9c-fd1ec94a810d%2Fkitchentest.glb代替https://cdn.glitch.com/90a30469-f038-4054-be9c-fd1ec94a810d%2Fkitchentest.glb?1537178470645。加载程序使用文件扩展名来确定文件是 JSON (gltf) 还是二进制 (glb)。该数字混淆了解析器并通过 JSON 路径,这就是您收到components:gltf-model:warn Unexpected token g in JSON at position 0消息的原因