This commit is contained in:
Schmarni
2023-11-16 06:09:36 +01:00
parent 851c7b7587
commit 5b443c3b35
6 changed files with 189 additions and 194 deletions

View File

@@ -17,7 +17,7 @@ use super::{
actions::XrActionSets,
handtracking::{HandTrackingRef, HandTrackingTracker},
trackers::{OpenXRLeftController, OpenXRRightController, OpenXRTrackingRoot},
QuatConv,
QuatConv, hands::hand_tracking::HandTrackingData,
};
/// add debug renderer for controllers
@@ -55,19 +55,16 @@ pub fn draw_gizmos(
Without<OpenXRLeftController>,
Without<OpenXRTrackingRoot>,
)>,
hand_tracking: Option<Res<HandTrackingTracker>>,
hand_tracking: Option<Res<HandTrackingData>>,
action_sets: Res<XrActionSets>,
) {
if let Some(hand_tracking) = hand_tracking {
let handtracking_ref = hand_tracking.get_ref(&xr_input, &frame_state);
if let Some(joints) = handtracking_ref.get_left_poses() {
for joint in joints {
let p = joint.pose.position;
let r = joint.pose.orientation;
let quat = r.to_quat();
let trans = Transform::from_rotation(quat);
if let Some(joints) = handtracking_ref.get_poses(Hand::Left) {
for joint in joints.inner() {
let trans = Transform::from_rotation(joint.orientation);
gizmos.circle(
(p.x, p.y, p.z).into(),
joint.position,
trans.forward(),
joint.radius,
Color::ORANGE_RED,
@@ -76,14 +73,11 @@ pub fn draw_gizmos(
} else {
info!("left_hand_poses returned None");
}
if let Some(joints) = handtracking_ref.get_right_poses() {
for joint in joints {
let p = joint.pose.position;
let r = joint.pose.orientation;
let quat = r.to_quat();
let trans = Transform::from_rotation(quat);
if let Some(joints) = handtracking_ref.get_poses(Hand::Right) {
for joint in joints.inner() {
let trans = Transform::from_rotation(joint.orientation);
gizmos.circle(
(p.x, p.y, p.z).into(),
joint.position,
trans.forward(),
joint.radius,
Color::LIME_GREEN,