slight cleaning

This commit is contained in:
Jay Christy
2023-10-09 00:16:14 -04:00
parent 7ad02e269f
commit 7826c445e2

View File

@@ -271,8 +271,7 @@ pub fn update_hand_states(
}
}
fn draw_skeleton_hands(
mut gizmos: Gizmos,
fn update_emulated_hand_skeletons(
right_controller_query: Query<(&GlobalTransform, With<OpenXRRightController>)>,
left_controller_query: Query<(&GlobalTransform, With<OpenXRLeftController>)>,
hand_states_option: Option<ResMut<HandStatesResource>>,
@@ -285,8 +284,7 @@ fn draw_skeleton_hands(
.unwrap()
.0
.compute_transform();
draw_hand_bones(
&mut gizmos,
update_hand_bones_emulated(
left_hand_transform,
Hand::Left,
hands.left,
@@ -297,9 +295,7 @@ fn draw_skeleton_hands(
.unwrap()
.0
.compute_transform();
// draw_hand(&mut gizmos, right_hand_transform, Hand::Right);
draw_hand_bones(
&mut gizmos,
update_hand_bones_emulated(
right_hand_transform,
Hand::Right,
hands.right,
@@ -474,8 +470,7 @@ fn get_bone_gizmo_style(hand_bone: &HandBone) -> (f32, Color) {
}
}
fn draw_hand_bones(
mut gizmos: &mut Gizmos,
fn update_hand_bones_emulated(
controller_transform: Transform,
hand: Hand,
hand_state: HandState,
@@ -503,49 +498,26 @@ fn draw_hand_bones(
let grip_curl = hand_state.grip;
let index_curl = hand_state.get_index_curl();
let thumb_curl = hand_state.get_thumb_curl();
//get paml quat
//get palm quat
let y = Quat::from_rotation_y(-90.0 * PI / 180.0);
let x = Quat::from_rotation_x(-90.0 * PI / 180.0);
let palm_quat = controller_quat.mul_quat(y).mul_quat(x);
//draw debug rays
// gizmos.ray(
// hand_translation,
// palm_quat.mul_vec3(Vec3::Z * 0.2),
// Color::BLUE,
// );
// gizmos.ray(
// hand_translation,
// palm_quat.mul_vec3(Vec3::Y * 0.2),
// Color::GREEN,
// );
// gizmos.ray(
// hand_translation,
// palm_quat.mul_vec3(Vec3::X * 0.2),
// Color::RED,
// );
//get simulated bones
let hand_transform_array: [Transform; 26] = get_simulated_open_hand_transforms(hand);
//draw controller-palm bone(should be zero length)
//palm
let palm = hand_transform_array[HandJoint::PALM];
gizmos.ray(hand_translation, palm.translation, Color::WHITE);
calc_transforms[HandJoint::PALM] = Transform {
translation: hand_translation + palm.translation,
..default()
};
//draw palm-wrist
//wrist
let wrist = hand_transform_array[HandJoint::WRIST];
gizmos.ray(
hand_translation + palm.translation,
palm_quat.mul_vec3(wrist.translation),
Color::GRAY,
);
calc_transforms[HandJoint::WRIST] = Transform {
translation: hand_translation + palm.translation + palm_quat.mul_vec3(wrist.translation),
..default()
};
//thumb
//better finger drawing?
let thumb_joints = [
HandJoint::THUMB_METACARPAL,
HandJoint::THUMB_PROXIMAL,
@@ -555,7 +527,6 @@ fn draw_hand_bones(
let mut prior_start: Option<Vec3> = None;
let mut prior_quat: Option<Quat> = None;
let mut prior_vector: Option<Vec3> = None;
let color = Color::RED;
let splay = Quat::from_rotation_y(splay_direction * 30.0 * PI / 180.0);
let huh = Quat::from_rotation_x(-35.0 * PI / 180.0);
let splay_quat = palm_quat.mul_quat(huh).mul_quat(splay);
@@ -568,7 +539,6 @@ fn draw_hand_bones(
let thumb_prox = hand_transform_array[*bone];
let tp_start = start + prior_vector.unwrap();
let tp_vector = tp_quat.mul_vec3(thumb_prox.translation);
gizmos.ray(tp_start, tp_vector, color);
prior_start = Some(tp_start);
prior_quat = Some(tp_quat);
prior_vector = Some(tp_vector);
@@ -584,7 +554,6 @@ fn draw_hand_bones(
+ palm_quat.mul_vec3(palm.translation)
+ palm_quat.mul_vec3(wrist.translation);
let tm_vector = palm_quat.mul_vec3(thumb_meta.translation);
gizmos.ray(tm_start, tm_vector, color);
prior_start = Some(tm_start);
prior_quat = Some(splay_quat);
prior_vector = Some(tm_vector);
@@ -598,7 +567,6 @@ fn draw_hand_bones(
}
//index
//better finger drawing?
let thumb_joints = [
HandJoint::INDEX_METACARPAL,
HandJoint::INDEX_PROXIMAL,
@@ -609,7 +577,6 @@ fn draw_hand_bones(
let mut prior_start: Option<Vec3> = None;
let mut prior_quat: Option<Quat> = None;
let mut prior_vector: Option<Vec3> = None;
let color = Color::ORANGE;
let splay = Quat::from_rotation_y(splay_direction * 10.0 * PI / 180.0);
let splay_quat = palm_quat.mul_quat(splay);
for bone in thumb_joints.iter() {
@@ -621,7 +588,6 @@ fn draw_hand_bones(
let thumb_prox = hand_transform_array[*bone];
let tp_start = start + prior_vector.unwrap();
let tp_vector = tp_quat.mul_vec3(thumb_prox.translation);
gizmos.ray(tp_start, tp_vector, color);
prior_start = Some(tp_start);
prior_quat = Some(tp_quat);
prior_vector = Some(tp_vector);
@@ -637,7 +603,6 @@ fn draw_hand_bones(
+ palm_quat.mul_vec3(palm.translation)
+ palm_quat.mul_vec3(wrist.translation);
let tm_vector = palm_quat.mul_vec3(thumb_meta.translation);
gizmos.ray(tm_start, tm_vector, color);
prior_start = Some(tm_start);
prior_quat = Some(splay_quat);
prior_vector = Some(tm_vector);
@@ -650,7 +615,7 @@ fn draw_hand_bones(
}
}
//better finger drawing?
//middle
let thumb_joints = [
HandJoint::MIDDLE_METACARPAL,
HandJoint::MIDDLE_PROXIMAL,
@@ -661,7 +626,6 @@ fn draw_hand_bones(
let mut prior_start: Option<Vec3> = None;
let mut prior_quat: Option<Quat> = None;
let mut prior_vector: Option<Vec3> = None;
let color = Color::YELLOW;
let splay = Quat::from_rotation_y(splay_direction * 0.0 * PI / 180.0);
let splay_quat = palm_quat.mul_quat(splay);
for bone in thumb_joints.iter() {
@@ -673,7 +637,6 @@ fn draw_hand_bones(
let thumb_prox = hand_transform_array[*bone];
let tp_start = start + prior_vector.unwrap();
let tp_vector = tp_quat.mul_vec3(thumb_prox.translation);
gizmos.ray(tp_start, tp_vector, color);
prior_start = Some(tp_start);
prior_quat = Some(tp_quat);
prior_vector = Some(tp_vector);
@@ -689,7 +652,6 @@ fn draw_hand_bones(
+ palm_quat.mul_vec3(palm.translation)
+ palm_quat.mul_vec3(wrist.translation);
let tm_vector = palm_quat.mul_vec3(thumb_meta.translation);
gizmos.ray(tm_start, tm_vector, color);
prior_start = Some(tm_start);
prior_quat = Some(splay_quat);
prior_vector = Some(tm_vector);
@@ -701,7 +663,7 @@ fn draw_hand_bones(
}
}
}
//better finger drawing?
//ring
let thumb_joints = [
HandJoint::RING_METACARPAL,
HandJoint::RING_PROXIMAL,
@@ -712,7 +674,6 @@ fn draw_hand_bones(
let mut prior_start: Option<Vec3> = None;
let mut prior_quat: Option<Quat> = None;
let mut prior_vector: Option<Vec3> = None;
let color = Color::GREEN;
let splay = Quat::from_rotation_y(splay_direction * -10.0 * PI / 180.0);
let splay_quat = palm_quat.mul_quat(splay);
for bone in thumb_joints.iter() {
@@ -724,7 +685,6 @@ fn draw_hand_bones(
let thumb_prox = hand_transform_array[*bone];
let tp_start = start + prior_vector.unwrap();
let tp_vector = tp_quat.mul_vec3(thumb_prox.translation);
gizmos.ray(tp_start, tp_vector, color);
prior_start = Some(tp_start);
prior_quat = Some(tp_quat);
prior_vector = Some(tp_vector);
@@ -740,7 +700,6 @@ fn draw_hand_bones(
+ palm_quat.mul_vec3(palm.translation)
+ palm_quat.mul_vec3(wrist.translation);
let tm_vector = palm_quat.mul_vec3(thumb_meta.translation);
gizmos.ray(tm_start, tm_vector, color);
prior_start = Some(tm_start);
prior_quat = Some(splay_quat);
prior_vector = Some(tm_vector);
@@ -753,7 +712,7 @@ fn draw_hand_bones(
}
}
//better finger drawing?
//little
let thumb_joints = [
HandJoint::LITTLE_METACARPAL,
HandJoint::LITTLE_PROXIMAL,
@@ -764,7 +723,6 @@ fn draw_hand_bones(
let mut prior_start: Option<Vec3> = None;
let mut prior_quat: Option<Quat> = None;
let mut prior_vector: Option<Vec3> = None;
let color = Color::BLUE;
let splay = Quat::from_rotation_y(splay_direction * -20.0 * PI / 180.0);
let splay_quat = palm_quat.mul_quat(splay);
for bone in thumb_joints.iter() {
@@ -776,7 +734,6 @@ fn draw_hand_bones(
let thumb_prox = hand_transform_array[*bone];
let tp_start = start + prior_vector.unwrap();
let tp_vector = tp_quat.mul_vec3(thumb_prox.translation);
gizmos.ray(tp_start, tp_vector, color);
prior_start = Some(tp_start);
prior_quat = Some(tp_quat);
prior_vector = Some(tp_vector);
@@ -792,7 +749,6 @@ fn draw_hand_bones(
+ palm_quat.mul_vec3(palm.translation)
+ palm_quat.mul_vec3(wrist.translation);
let tm_vector = palm_quat.mul_vec3(thumb_meta.translation);
gizmos.ray(tm_start, tm_vector, color);
prior_start = Some(tm_start);
prior_quat = Some(splay_quat);
prior_vector = Some(tm_vector);