如何从 Firebase 存储下载 USDZ 模型并将它们加载到我的 iOS 应用程序上的 ARQuickLook 中?

How can I download USDZ models from Firebase Storage and load them into ARQuickLook on my iOS app?

我想将 AR Quick Look 添加到我的应用程序,但将 USDZ 模型放入应用程序会占用太多存储空间。这就是为什么我决定将模型存储在 Firebase 存储中并在需要时下载模型。这是我用于快速查找本地 USDZ 模型的代码。

func numberOfPreviewItems(in controller: QLPreviewController) -> Int {
    return 1
}

func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> QLPreviewItem {
    let url = Bundle.main.url(forResource: models[thumbnailIndex], withExtension: "usdz")!
    return url as QLPreviewItem
}

func showModel() {
    let previewController = QLPreviewController()
    previewController.dataSource = self
    previewController.delegate = self
    present(previewController, animated: true)
}

如何从 Firebase 存储下载模型并加载它?

我会建议压缩与场景相关的所有文件:纹理、环境图像、准备好的 .scn(避免 .usdz)等

然后将此 zip 文件存储在您使用的任何服务器中。每个型号一个拉链。

从应用程序中,只需下载 zip 文件并解压缩即可。我推荐一个叫做 ZIP Foundation 的框架。

然后只需使用下载的 .scn 中的节点(灯光或其他)填充您的场景