Geo*_*f H 4 swift arkit arscnview
我ARSCNView正在跑步ARSession。您可以session.pause()肯定地暂停会话,但这仍然有效,可以使会话继续运行。我尝试ARSCNView通过将其从其超级视图中删除来取消分配。该ARSCNView确实重新分配,但ARSession仍运行后!您不能分配nil给ARSession任何一个。我可以看到ARSessionDelegate的
func session(_ session: ARSession, didUpdate frame: ARFrame)
Run Code Online (Sandbox Code Playgroud)
仍在被叫!
完成后,如何用ARKit彻底擦拭干净?
可能吗?
正式而言,现在还不能。
但是,有一种解决方法:将ARSCNView一次性用品制成。
离开AR时,请先暂停ARSession。然后解除分配整个ARSCNView层次结构和集ARSCNView到nil的好措施。重建整个ARSCNView层次结构,并在需要返回到AR时开始新的会话。
var ARview: ARSCNView?
func punchTheClown() {
ARView?.session.pause()
ARView?.removeFromSuperview()
ARView = nil
}
Run Code Online (Sandbox Code Playgroud)
应用程序的其他非AR区域通常将位于与您的同级兄弟的单独视图层次结构中ARSCNView。我期待Apple提供实际的stopSession()功能,因此我们所有人都可以在此期间不再需要打孔TheClown。
| 归档时间: |
|
| 查看次数: |
1079 次 |
| 最近记录: |