如何从 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 中的节点(灯光或其他)填充您的场景
我想将 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 中的节点(灯光或其他)填充您的场景