wyvern walk

This commit is contained in:
jshipsey 2021-04-28 09:24:43 -04:00 committed by Snowram
parent fabb5dd3d1
commit e8bce3ad9f
2 changed files with 34 additions and 18 deletions

View File

@ -52,7 +52,7 @@ impl Animation for IdleAnimation {
next.head.position = Vec3::new(0.0, s_a.head.0, s_a.head.1);
next.head.orientation = Quaternion::rotation_z(duck_head_look.x)
* Quaternion::rotation_x(0.4 -duck_head_look.y.abs() + wave_slow_cos * 0.01);
* Quaternion::rotation_x(0.4 - duck_head_look.y.abs() + wave_slow_cos * 0.01);
next.beak.position = Vec3::new(0.0, s_a.beak.0, s_a.beak.1);
next.beak.orientation = Quaternion::rotation_x(wave_slow_cos * -0.02 - 0.02);
@ -72,13 +72,21 @@ impl Animation for IdleAnimation {
next.wing_mid_l.position = Vec3::new(-s_a.wing_mid.0, s_a.wing_mid.1, s_a.wing_mid.2);
next.wing_mid_r.position = Vec3::new(s_a.wing_mid.0, s_a.wing_mid.1, s_a.wing_mid.2);
next.wing_mid_l.orientation = Quaternion::rotation_x(0.1)*Quaternion::rotation_y(-0.1) * Quaternion::rotation_z(0.7);
next.wing_mid_r.orientation = Quaternion::rotation_x(0.1)*Quaternion::rotation_y(0.1) * Quaternion::rotation_z(-0.7);
next.wing_mid_l.orientation = Quaternion::rotation_x(0.1)
* Quaternion::rotation_y(-0.1)
* Quaternion::rotation_z(0.7);
next.wing_mid_r.orientation = Quaternion::rotation_x(0.1)
* Quaternion::rotation_y(0.1)
* Quaternion::rotation_z(-0.7);
next.wing_out_l.position = Vec3::new(-s_a.wing_out.0, s_a.wing_out.1, s_a.wing_out.2);
next.wing_out_r.position = Vec3::new(s_a.wing_out.0, s_a.wing_out.1, s_a.wing_out.2);
next.wing_out_l.orientation = Quaternion::rotation_x(0.0) * Quaternion::rotation_y(0.1) * Quaternion::rotation_z(0.55);
next.wing_out_r.orientation = Quaternion::rotation_x(0.0) * Quaternion::rotation_y(-0.1) * Quaternion::rotation_z(-0.55);
next.wing_out_l.orientation = Quaternion::rotation_x(0.0)
* Quaternion::rotation_y(0.1)
* Quaternion::rotation_z(0.55);
next.wing_out_r.orientation = Quaternion::rotation_x(0.0)
* Quaternion::rotation_y(-0.1)
* Quaternion::rotation_z(-0.55);
next.leg_l.position = Vec3::new(-s_a.leg.0, s_a.leg.1, s_a.leg.2);
next.leg_l.orientation = Quaternion::rotation_x(0.0);

View File

@ -95,20 +95,28 @@ impl Animation for RunAnimation {
* Quaternion::rotation_z(shortalt * 0.10);
next.tail_front.position = Vec3::new(0.0, s_a.tail_front.0, s_a.tail_front.1);
next.tail_front.orientation = Quaternion::rotation_x(0.6 + short * -0.02);
next.tail_front.orientation = Quaternion::rotation_x(0.3 + short * -0.02);
next.tail_rear.position = Vec3::new(0.0, s_a.tail_rear.0, s_a.tail_rear.1);
next.tail_rear.orientation = Quaternion::rotation_x(-0.2 + short * -0.1);
next.wing_in_l.position = Vec3::new(-s_a.wing_in.0, s_a.wing_in.1, s_a.wing_in.2);
next.wing_in_r.position = Vec3::new(s_a.wing_in.0, s_a.wing_in.1, s_a.wing_in.2);
next.wing_in_l.position = Vec3::new(
-s_a.wing_in.0,
s_a.wing_in.1 + foot1a * 2.0,
s_a.wing_in.2 + speednorm * 1.0 + foot1b * 1.0,
);
next.wing_in_r.position = Vec3::new(
s_a.wing_in.0,
s_a.wing_in.1 + foot2a * 2.0,
s_a.wing_in.2 + speednorm * 1.0 + foot2b * 1.0,
);
next.wing_in_l.orientation = Quaternion::rotation_x(foot2a * 0.5)
* Quaternion::rotation_y(-0.8)
* Quaternion::rotation_z(0.2);
next.wing_in_r.orientation = Quaternion::rotation_x(foot1a * 0.5)
* Quaternion::rotation_y(0.8)
* Quaternion::rotation_z(-0.2);
next.wing_in_l.orientation = Quaternion::rotation_x(foot2a * -0.05 + speednorm * -0.3)
* Quaternion::rotation_y(-0.8 + speednorm * 0.55 + foot2b * -0.2)
* Quaternion::rotation_z(0.2 + foot2a * 0.6);
next.wing_in_r.orientation = Quaternion::rotation_x(foot1a * -0.05 + speednorm * -0.3)
* Quaternion::rotation_y(0.8 + speednorm * -0.55 + foot1b * 0.2)
* Quaternion::rotation_z(-0.2 + foot1a * -0.6);
next.wing_mid_l.position = Vec3::new(-s_a.wing_mid.0, s_a.wing_mid.1, s_a.wing_mid.2);
next.wing_mid_r.position = Vec3::new(s_a.wing_mid.0, s_a.wing_mid.1, s_a.wing_mid.2);
@ -117,10 +125,10 @@ impl Animation for RunAnimation {
next.wing_out_l.position = Vec3::new(-s_a.wing_out.0, s_a.wing_out.1, s_a.wing_out.2);
next.wing_out_r.position = Vec3::new(s_a.wing_out.0, s_a.wing_out.1, s_a.wing_out.2);
next.wing_out_l.orientation =
Quaternion::rotation_y(-0.2 + short * 0.05) * Quaternion::rotation_z(0.2);
next.wing_out_r.orientation =
Quaternion::rotation_y(0.2 + short * -0.05) * Quaternion::rotation_z(-0.2);
next.wing_out_l.orientation = Quaternion::rotation_y(-0.2 + short * 0.05)
* Quaternion::rotation_z(0.2 + foot2a * 0.3);
next.wing_out_r.orientation = Quaternion::rotation_y(0.2 + short * -0.05)
* Quaternion::rotation_z(-0.2 + foot1a * 0.3);
next.leg_l.position = Vec3::new(
-s_a.leg.0 + speednorm * 1.5,