У меня есть сцена Reality Composer, и я хочу извлечь ее как файл usdz или любые файлы, которые можно использовать в ARQuickLook?
Является ли это возможным?





От Apple Создание 3D-контента с помощью Reality Composer документ:
You can also save your composition to a .reality file for use as a lightweight AR Quick Look experience in your app or on the web. This allows users to place and preview content in the real world to get a quick sense of what it’s like.
To create a Reality file, choose File > Export > Export Project in the Reality Composer menu, and provide a name for the file. You use the Reality file that gets stored to disk just like you would use a USDZ file, as described in Previewing a Model with AR Quick Look.
В чем разница между файлом USDZ и файлом .reality? Есть ли что-то, что может сделать файл .reality, чего нельзя сделать с помощью USDZ?
Во время сборки Xcode компилирует ваш .rcproject в .reality файл, а AR Quick Look принимает элементы предварительного просмотра типа .reality. Вот пример, который использует AR Quick Look для предварительного просмотра Experience.rcproject, взятого из примера кода Apple Столешница SwiftStrike:
import UIKit
import QuickLook
import ARKit
class ViewController: UIViewController, QLPreviewControllerDataSource {
override func viewDidAppear(_ animated: Bool) {
let previewController = QLPreviewController()
previewController.dataSource = self
present(previewController, animated: true, completion: nil)
}
func numberOfPreviewItems(in controller: QLPreviewController) -> Int { return 1 }
func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> QLPreviewItem {
guard let path = Bundle.main.path(forResource: "Experience", ofType: "reality") else { fatalError("couldn't find the rcproject file.") }
let url = URL(fileURLWithPath: path)
let item = ARQuickLookPreviewItem(fileAt: url)
return item
}
}
О, снова моя ошибка, я пробовал это, потому что я прочитал статью Apple, о которой вы упомянули, я только что понял, что это был не тот телефон (не iOS 13), поскольку он поддерживается только на iOS 13. Спасибо.