如何通过存储API从我上传的3D模型中获取.data3d.buffer

时间:2017-09-28 02:17:05

标签: archilogic 3d.io

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

1 个答案:

答案 0 :(得分: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)
})