Swift ARKit 3.0–;人与运动捕捉
我正在尝试在同一个应用程序上加载Swift ARKit 3.0–;人与运动捕捉,swift,augmented-reality,arkit,realitykit,Swift,Augmented Reality,Arkit,Realitykit,我正在尝试在同一个应用程序上加载人物遮挡和运动捕捉 由于ARBodyTrackingConfiguration不支持personSegmentationWithDepth,因此我创建了两个arview,为每个arview提供不同的配置(arworldctrackingconfiguration和ARBodyTrackingConfiguration) 问题是,由于某种原因,只有一个委托回调被激发,并且没有深度数据可用 我做错了什么 在ARKit 4.0中,可以同时运行多个ARSession吗?在
人物遮挡
和运动捕捉
由于ARBodyTrackingConfiguration
不支持personSegmentationWithDepth
,因此我创建了两个arview,为每个arview提供不同的配置(arworldctrackingconfiguration
和ARBodyTrackingConfiguration
)
问题是,由于某种原因,只有一个委托回调被激发,并且没有深度数据可用
我做错了什么
在ARKit 4.0中,可以同时运行多个ARSession吗?在ARKit 4.0中,两个功能都可以同时运行。然而,它们都是CPU密集型的
override func viewDidLoad() {
super.viewDidLoad()
guard ARBodyTrackingConfiguration.isSupported
else { fatalError("MoCap is supported on devices with A12 and higher") }
guard ARBodyTrackingConfiguration.supportsFrameSemantics(
.personSegmentationWithDepth)
else { fatalError("People occlusion is not supported on this device.") }
let config = ARBodyTrackingConfiguration()
config.frameSemantics = .personSegmentationWithDepth
config.automaticSkeletonScaleEstimationEnabled = true
arView.session.run(config, options: [])
}
你需要选择其中一个
ARWorldTrackingConfiguration
和person segmentation将在ARFrame
上提供Arody2D
,这将为您提供不太详细的信息,但与您从ArodyTrackingConfiguration
中获得的信息相同。