我使用Xcode的模板创建了一个增强现实项目。
Xcode创建一个名为Experience.rcproject的文件。
该项目包含一个名为Box的场景和一个名为Steel Cube的立方体。
我在Experience.rcproject中添加了3个场景,分别称为alpha、bravo和delta。
我负责这个项目。
Xcode运行这两行代码
// Load the "Box" scene from the "Experience" Reality File
let boxAnchor = try! Experience.loadBoxX(namedFile: "Ground")
// Add the box anchor to the scene
arView.scene.anchors.append(boxAnchor)这些行从体验文件中加载长方体场景。
加载此场景后,如何切换到另一个场景alpha、bravo或delta,而不必加载整个场景?
发布于 2020-06-23 20:01:33
在RealityKit中切换来自Reality Composer的两个或多个场景的最简单方法是使用removeAll()实例方法,允许您从数组中删除所有锚点。
您可以使用asyncAfter(deadline:execute:)方法切换两个场景:
let boxAnchor = try! Experience.loadBox()
arView.scene.anchors.append(boxAnchor)
    
DispatchQueue.main.asyncAfter(deadline: .now() + 2.0) {
    
    self.arView.scene.anchors.removeAll()
    let sphereAnchor = try! Experience.loadSphere()
    self.arView.scene.anchors.append(sphereAnchor)
}或者,您可以使用常规UIButton切换两个不同的RC场景
@IBAction func loadNewSceneAndDeletePrevious(_ sender: UIButton) {
    self.arView.scene.anchors.removeAll()
    let sphereAnchor = try! Experience.loadSphere()
    self.arView.scene.anchors.append(sphereAnchor)
}https://stackoverflow.com/questions/62533302
复制相似问题