private void UpdateBodyFeatures(Astra.BodyStream bodyStream, Astra.Body[] bodies) { if (ToggleSeg != null && ToggleSegBody != null && ToggleSegBodyHand != null) { Astra.BodyTrackingFeatures targetFeatures = Astra.BodyTrackingFeatures.Segmentation; if (ToggleSegBodyHand.isOn) { targetFeatures = Astra.BodyTrackingFeatures.HandPose; } else if (ToggleSegBody.isOn) { targetFeatures = Astra.BodyTrackingFeatures.Skeleton; } if (targetFeatures != _previousTargetFeatures) { _previousTargetFeatures = targetFeatures; foreach (var body in bodies) { if (body.Status != Astra.BodyStatus.NotTracking) { bodyStream.SetBodyFeatures(body.Id, targetFeatures); } } bodyStream.SetDefaultBodyFeatures(targetFeatures); } } }
private void OnSkeletonFeaturesChanged(Astra.BodyTrackingFeatures features) { AstraManager.Instance.BodyStream.SetDefaultBodyFeatures(features); }