Adding a tracking confidence state to XRPose
This commit is contained in:
parent
f8b8d0d4b8
commit
173105596e
8 changed files with 53 additions and 5 deletions
|
|
@ -181,6 +181,7 @@ void MobileVRInterface::set_position_from_sensors() {
|
|||
orientation = rotate * orientation;
|
||||
|
||||
tracking_state = XRInterface::XR_NORMAL_TRACKING;
|
||||
tracking_confidence = XRPose::XR_TRACKING_CONFIDENCE_HIGH;
|
||||
};
|
||||
|
||||
///@TODO improve this, the magnetometer is very fidgety sometimes flipping the axis for no apparent reason (probably a bug on my part)
|
||||
|
|
@ -193,6 +194,7 @@ void MobileVRInterface::set_position_from_sensors() {
|
|||
orientation = Basis(transform_quat);
|
||||
|
||||
tracking_state = XRInterface::XR_NORMAL_TRACKING;
|
||||
tracking_confidence = XRPose::XR_TRACKING_CONFIDENCE_HIGH;
|
||||
} else if (has_grav) {
|
||||
// use gravity vector to make sure down is down...
|
||||
// transform gravity into our world space
|
||||
|
|
@ -512,7 +514,7 @@ void MobileVRInterface::process() {
|
|||
|
||||
if (head.is_valid()) {
|
||||
// Set our head position, note in real space, reference frame and world scale is applied later
|
||||
head->set_pose("default", head_transform, Vector3(), Vector3());
|
||||
head->set_pose("default", head_transform, Vector3(), Vector3(), tracking_confidence);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ class MobileVRInterface : public XRInterface {
|
|||
private:
|
||||
bool initialized = false;
|
||||
XRInterface::TrackingStatus tracking_state;
|
||||
XRPose::TrackingConfidence tracking_confidence = XRPose::XR_TRACKING_CONFIDENCE_NONE;
|
||||
|
||||
// Just set some defaults for these. At some point we need to look at adding a lookup table for common device + headset combos and/or support reading cardboard QR codes
|
||||
double eye_height = 1.85;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue