3

我可以通过 storage api 上传我的 3d 模型。但我无法从存储 api 获取 .data3d.buffer。我发现 .data3d.buffer 是 aframe 加载 3d 模型所必需的。如何通过存储 api 获取 .data3d.buffer?

4

1 回答 1

2

如果您有存储密钥,则可以直接从storage.3d.io.

例子:

io3d.storage.put(myFile).then(function (storageKey) {
  console.log('the data3d.buffer is now at', 'https://storage.3d.io' + storageKey)
})

请注意,该文件将有一个.gz.data3d.buffer,因为浏览器将在下载时解压缩打包的资产。您可能必须删除.gz才能直接使用该文件。

Storage API 可以直接使用,但会自动为您将二进制文件解析为 JSON。

要在 A-Frame 中使用模型,您只需要存储密钥(在浏览器中):

io3d.storage.put(myFile).then(function (storageKey) {
  var model = document.createElement('a-entity')
  model.setAttribute('io3d-data3d', 'key: ' + storageKey)
  document.querySelector('a-scene').appendChild(model)
})
于 2017-09-28T07:37:46.407 回答