diff --git a/assets/voxygen/voxel/npc/reddragon/female/foot_bl.vox b/assets/voxygen/voxel/npc/reddragon/female/foot_bl.vox index 64878dbd4f..019dc0ef26 100644 Binary files a/assets/voxygen/voxel/npc/reddragon/female/foot_bl.vox and b/assets/voxygen/voxel/npc/reddragon/female/foot_bl.vox differ diff --git a/assets/voxygen/voxel/npc/reddragon/female/foot_br.vox b/assets/voxygen/voxel/npc/reddragon/female/foot_br.vox index 0571661ff9..86be0d6765 100644 Binary files a/assets/voxygen/voxel/npc/reddragon/female/foot_br.vox and b/assets/voxygen/voxel/npc/reddragon/female/foot_br.vox differ diff --git a/assets/voxygen/voxel/npc/reddragon/male/foot_bl.vox b/assets/voxygen/voxel/npc/reddragon/male/foot_bl.vox index 64878dbd4f..019dc0ef26 100644 Binary files a/assets/voxygen/voxel/npc/reddragon/male/foot_bl.vox and b/assets/voxygen/voxel/npc/reddragon/male/foot_bl.vox differ diff --git a/assets/voxygen/voxel/npc/reddragon/male/foot_br.vox b/assets/voxygen/voxel/npc/reddragon/male/foot_br.vox index 0571661ff9..86be0d6765 100644 Binary files a/assets/voxygen/voxel/npc/reddragon/male/foot_br.vox and b/assets/voxygen/voxel/npc/reddragon/male/foot_br.vox differ diff --git a/voxygen/src/anim/character/beta.rs b/voxygen/src/anim/character/beta.rs index 687424a68f..4cd099e1cf 100644 --- a/voxygen/src/anim/character/beta.rs +++ b/voxygen/src/anim/character/beta.rs @@ -97,7 +97,7 @@ impl Animation for BetaAnimation { } next.l_shoulder.offset = Vec3::new( - skeleton_attr.shoulder.0, + -skeleton_attr.shoulder.0, skeleton_attr.shoulder.1, skeleton_attr.shoulder.2, ); diff --git a/voxygen/src/anim/character/climb.rs b/voxygen/src/anim/character/climb.rs index 23370b68f5..e4fa290ee1 100644 --- a/voxygen/src/anim/character/climb.rs +++ b/voxygen/src/anim/character/climb.rs @@ -72,7 +72,7 @@ impl Animation for ClimbAnimation { next.shorts.scale = Vec3::one(); next.l_hand.offset = Vec3::new( - skeleton_attr.hand.0, + -skeleton_attr.hand.0, skeleton_attr.hand.1 + quicka * 1.5, skeleton_attr.hand.2 - quick * 4.0, ); diff --git a/voxygen/src/anim/character/gliding.rs b/voxygen/src/anim/character/gliding.rs index 88c3cb956f..ebc8fe13bb 100644 --- a/voxygen/src/anim/character/gliding.rs +++ b/voxygen/src/anim/character/gliding.rs @@ -58,7 +58,7 @@ impl Animation for GlidingAnimation { next.head.offset = Vec3::new( 0.0, -2.0 + skeleton_attr.head.0, - -2.0 + skeleton_attr.head.1, + skeleton_attr.head.1, ); next.head.ori = Quaternion::rotation_x(0.35 - slow * 0.10 + head_look.y) * Quaternion::rotation_z(head_look.x + slowa * 0.15); @@ -72,10 +72,10 @@ impl Animation for GlidingAnimation { next.shorts.offset = Vec3::new(0.0, skeleton_attr.shorts.0, skeleton_attr.shorts.1); next.shorts.ori = Quaternion::rotation_z(slowa * 0.35); - next.l_hand.offset = Vec3::new(-9.5 + slowa * -1.5, -3.0 + slowa * 1.5, 6.0); + next.l_hand.offset = Vec3::new(-9.5 + slowa * -1.5, -3.0 + slowa * 1.5, 8.0); next.l_hand.ori = Quaternion::rotation_x(-2.7 + slowa * -0.1); - next.r_hand.offset = Vec3::new(9.5 + slowa * -1.5, -3.0 + slowa * -1.5, 6.0); + next.r_hand.offset = Vec3::new(9.5 + slowa * -1.5, -3.0 + slowa * -1.5, 8.0); next.r_hand.ori = Quaternion::rotation_x(-2.7 + slowa * -0.10); next.l_foot.offset = Vec3::new( @@ -112,8 +112,8 @@ impl Animation for GlidingAnimation { ); next.r_shoulder.scale = Vec3::one() * 1.1; - next.glider.offset = Vec3::new(0.0, -13.0 + slow * 0.10, 6.0); - next.glider.ori = Quaternion::rotation_x(1.0) * Quaternion::rotation_y(slowa * 0.04); + next.glider.offset = Vec3::new(0.0, -13.0 + slow * 0.10, 8.0); + next.glider.ori = Quaternion::rotation_x(0.8) * Quaternion::rotation_y(slowa * 0.04); next.glider.scale = Vec3::one(); next.main.offset = Vec3::new(-7.0, -5.0, 15.0); @@ -130,7 +130,7 @@ impl Animation for GlidingAnimation { next.lantern.scale = Vec3::one() * 0.65; next.torso.offset = Vec3::new(0.0, 6.0, 15.0) / 11.0 * skeleton_attr.scaler; - next.torso.ori = Quaternion::rotation_x(-0.05 * speed.max(12.0) + slow * 0.10) + next.torso.ori = Quaternion::rotation_x(-0.05 * speed.max(12.0) + slow * 0.06) * Quaternion::rotation_y(tilt * 16.0); next.torso.scale = Vec3::one() / 11.0 * skeleton_attr.scaler; diff --git a/voxygen/src/anim/character/mod.rs b/voxygen/src/anim/character/mod.rs index 5a9bff96af..c867a3d25e 100644 --- a/voxygen/src/anim/character/mod.rs +++ b/voxygen/src/anim/character/mod.rs @@ -220,8 +220,8 @@ impl<'a> From<&'a comp::humanoid::Body> for SkeletonAttr { (Orc, Female) => (0.0, 14.0), (Human, Male) => (0.3, 13.5), (Human, Female) => (0.0, 13.8), - (Elf, Male) => (0.0, 13.5), - (Elf, Female) => (0.0, 13.5), + (Elf, Male) => (0.5, 13.5), + (Elf, Female) => (1.0, 13.5), (Dwarf, Male) => (0.0, 14.5), (Dwarf, Female) => (0.0, 14.0), (Undead, Male) => (0.5, 13.6), diff --git a/voxygen/src/anim/character/run.rs b/voxygen/src/anim/character/run.rs index 4a7dd9a4f5..b2d8d9384a 100644 --- a/voxygen/src/anim/character/run.rs +++ b/voxygen/src/anim/character/run.rs @@ -92,9 +92,9 @@ impl Animation for RunAnimation { next.head.offset = Vec3::new( 0.0, -3.0 + skeleton_attr.head.0, - -1.0 + skeleton_attr.head.1 + short * 0.3, + -1.0 + skeleton_attr.head.1 + short * 0.1, ); - next.head.ori = Quaternion::rotation_z(head_look.x + long * -0.1 - short * 0.3) + next.head.ori = Quaternion::rotation_z(head_look.x + long * -0.1 - short * 0.1) * Quaternion::rotation_x(head_look.y + 0.35); next.head.scale = Vec3::one() * skeleton_attr.head_scale; @@ -103,11 +103,11 @@ impl Animation for RunAnimation { skeleton_attr.chest.0, skeleton_attr.chest.1 + 2.0 + short * 1.1 - lower, ); - next.chest.ori = Quaternion::rotation_z(short * 0.3 * walkintensity); + next.chest.ori = Quaternion::rotation_z(short * 0.15 * walkintensity); next.chest.scale = Vec3::one(); next.belt.offset = Vec3::new(0.0, skeleton_attr.belt.0, skeleton_attr.belt.1); - next.belt.ori = Quaternion::rotation_z(short * 0.25); + next.belt.ori = Quaternion::rotation_z(short * 0.1); next.belt.scale = Vec3::one(); next.back.offset = Vec3::new(0.0, skeleton_attr.back.0, skeleton_attr.back.1); @@ -115,24 +115,24 @@ impl Animation for RunAnimation { next.back.scale = Vec3::one() * 1.02; next.shorts.offset = Vec3::new(0.0, skeleton_attr.shorts.0, skeleton_attr.shorts.1); - next.shorts.ori = Quaternion::rotation_z(short * 0.4); + next.shorts.ori = Quaternion::rotation_z(short * 0.2); next.shorts.scale = Vec3::one(); next.l_hand.offset = Vec3::new( -skeleton_attr.hand.0 + wave_stop * 1.0 * walkintensity, skeleton_attr.hand.1 + short * 3.0 * walkintensity, - 1.0 + skeleton_attr.hand.2 + short * -1.5 * walkintensity, + 1.0 + skeleton_attr.hand.2 + short * -0.75 * walkintensity, ); - next.l_hand.ori = Quaternion::rotation_x(0.2 + short * 1.2 * walk) + next.l_hand.ori = Quaternion::rotation_x(0.2 + short * 1.5 * walk) * Quaternion::rotation_y(wave_stop * -0.1); next.l_hand.scale = Vec3::one(); next.r_hand.offset = Vec3::new( skeleton_attr.hand.0 + wave_stop * -1.0 * walkintensity, skeleton_attr.hand.1 + short * -3.0 * walkintensity, - 1.0 + skeleton_attr.hand.2 + short * 1.5 * walkintensity, + 1.0 + skeleton_attr.hand.2 + short * 0.75 * walkintensity, ); - next.r_hand.ori = Quaternion::rotation_x(0.2 + short * -1.2 * walk) + next.r_hand.ori = Quaternion::rotation_x(0.2 + short * -1.5 * walk) * Quaternion::rotation_y(wave_stop * 0.1); next.r_hand.scale = Vec3::one(); diff --git a/voxygen/src/anim/character/swim.rs b/voxygen/src/anim/character/swim.rs index 35787b7804..233bec9297 100644 --- a/voxygen/src/anim/character/swim.rs +++ b/voxygen/src/anim/character/swim.rs @@ -107,7 +107,7 @@ impl Animation for SwimAnimation { next.l_shoulder.offset = Vec3::new( -skeleton_attr.shoulder.0, - skeleton_attr.shoulder.0, + skeleton_attr.shoulder.1, skeleton_attr.shoulder.2, ); next.l_shoulder.ori = Quaternion::rotation_x(short * 0.15); @@ -115,7 +115,7 @@ impl Animation for SwimAnimation { next.r_shoulder.offset = Vec3::new( skeleton_attr.shoulder.0, - skeleton_attr.shoulder.0, + skeleton_attr.shoulder.1, skeleton_attr.shoulder.2, ); next.r_shoulder.ori = Quaternion::rotation_x(short * -0.15); diff --git a/voxygen/src/anim/dragon/idle.rs b/voxygen/src/anim/dragon/idle.rs index 76089250cd..2018abfd00 100644 --- a/voxygen/src/anim/dragon/idle.rs +++ b/voxygen/src/anim/dragon/idle.rs @@ -26,9 +26,8 @@ impl Animation for IdleAnimation { ) -> Self::Skeleton { let mut next = (*skeleton).clone(); - let wave_ultra_slow = (anim_time as f32 * 1.0 + PI).sin(); - let wave_ultra_slow_cos = (anim_time as f32 * 3.0 + PI).cos(); - let wave_slow = (anim_time as f32 * 4.5).sin(); + let ultra_slow = (anim_time as f32 * 1.0).sin(); + let wave_slow = (anim_time as f32 * 2.5).sin(); let wave_slow_cos = (anim_time as f32 * 4.5).cos(); let look = Vec2::new( @@ -47,7 +46,7 @@ impl Animation for IdleAnimation { next.head_upper.offset = Vec3::new( 0.0, skeleton_attr.head_upper.0, - skeleton_attr.head_upper.1 + wave_ultra_slow * 0.20, + skeleton_attr.head_upper.1 + ultra_slow * 0.20, ) * 1.05; next.head_upper.ori = Quaternion::rotation_z(0.8 * look.x) * Quaternion::rotation_x(0.8 * look.y); @@ -56,7 +55,7 @@ impl Animation for IdleAnimation { next.head_lower.offset = Vec3::new( 0.0, skeleton_attr.head_lower.0, - skeleton_attr.head_lower.1 + wave_ultra_slow * 0.20, + skeleton_attr.head_lower.1 + ultra_slow * 0.20, ) * 1.05; next.head_lower.ori = Quaternion::rotation_z(0.8 * look.x) * Quaternion::rotation_x(0.8 * look.y); @@ -64,8 +63,8 @@ impl Animation for IdleAnimation { next.jaw.offset = Vec3::new( 0.0, - skeleton_attr.jaw.0 - wave_ultra_slow_cos * 0.12, - skeleton_attr.jaw.1 + wave_slow * 0.2, + skeleton_attr.jaw.0, + skeleton_attr.jaw.1, ) * 1.05; next.jaw.ori = Quaternion::rotation_x(wave_slow * 0.05); next.jaw.scale = Vec3::one() * 0.98; @@ -73,7 +72,7 @@ impl Animation for IdleAnimation { next.chest_front.offset = Vec3::new( 0.0, skeleton_attr.chest_front.0, - wave_slow * 0.3 + skeleton_attr.chest_front.1, + skeleton_attr.chest_front.1, ) * 1.05; next.chest_front.ori = Quaternion::rotation_y(wave_slow * 0.03); next.chest_front.scale = Vec3::one() * 1.05; @@ -81,7 +80,7 @@ impl Animation for IdleAnimation { next.chest_rear.offset = Vec3::new( 0.0, skeleton_attr.chest_rear.0, - wave_slow * 0.3 + skeleton_attr.chest_rear.1, + skeleton_attr.chest_rear.1, ) * 1.05; next.chest_rear.ori = Quaternion::rotation_y(wave_slow * 0.03); next.chest_rear.scale = Vec3::one() * 1.05; @@ -99,7 +98,7 @@ impl Animation for IdleAnimation { skeleton_attr.wing_in.1, skeleton_attr.wing_in.2, ); - next.wing_in_l.ori = Quaternion::rotation_y(1.3); + next.wing_in_l.ori = Quaternion::rotation_y(0.2); next.wing_in_l.scale = Vec3::one() * 1.05; next.wing_in_r.offset = Vec3::new( @@ -107,7 +106,7 @@ impl Animation for IdleAnimation { skeleton_attr.wing_in.1, skeleton_attr.wing_in.2, ); - next.wing_in_r.ori = Quaternion::rotation_y(-1.3); + next.wing_in_r.ori = Quaternion::rotation_y(-0.2);//.8 next.wing_in_r.scale = Vec3::one() * 1.05; next.wing_out_l.offset = Vec3::new( @@ -115,7 +114,7 @@ impl Animation for IdleAnimation { skeleton_attr.wing_out.1, skeleton_attr.wing_out.2 + *OFF1, ); - next.wing_out_l.ori = Quaternion::rotation_y(*TEST_L); + next.wing_out_l.ori = Quaternion::rotation_y(-0.3);//2.0 next.wing_out_l.scale = Vec3::one() * 1.05; next.wing_out_r.offset = Vec3::new( @@ -123,7 +122,7 @@ impl Animation for IdleAnimation { skeleton_attr.wing_out.1, skeleton_attr.wing_out.2 + *OFF2, ); - next.wing_out_r.ori = Quaternion::rotation_y(*TEST_R); + next.wing_out_r.ori = Quaternion::rotation_y(0.3); next.wing_out_r.scale = Vec3::one() * 1.05; next.foot_fl.offset = Vec3::new( diff --git a/voxygen/src/anim/dragon/mod.rs b/voxygen/src/anim/dragon/mod.rs index 28a84c377f..8b8b3bce23 100644 --- a/voxygen/src/anim/dragon/mod.rs +++ b/voxygen/src/anim/dragon/mod.rs @@ -43,7 +43,7 @@ const WING_IN_X: f32 = 2.5; #[const_tweaker::tweak(min = -40.0, max = 40.0, step = 0.5)] const WING_IN_Y: f32 = -16.5; #[const_tweaker::tweak(min = -40.0, max = 40.0, step = 0.5)] -const WING_IN_Z: f32 = 3.0; +const WING_IN_Z: f32 = 0.0; #[const_tweaker::tweak(min = -40.0, max = 40.0, step = 0.5)] const WING_OUT_X: f32 = 23.0; #[const_tweaker::tweak(min = -40.0, max = 40.0, step = 0.5)] diff --git a/voxygen/src/anim/dragon/run.rs b/voxygen/src/anim/dragon/run.rs index 8f24e75967..14a343e94a 100644 --- a/voxygen/src/anim/dragon/run.rs +++ b/voxygen/src/anim/dragon/run.rs @@ -151,7 +151,7 @@ impl Animation for RunAnimation { skeleton_attr.wing_in.1, skeleton_attr.wing_in.2, ); - next.wing_in_l.ori = Quaternion::rotation_y(1.3); + next.wing_in_l.ori = Quaternion::rotation_y(0.8); next.wing_in_l.scale = Vec3::one() * 1.05; next.wing_in_r.offset = Vec3::new( @@ -159,7 +159,7 @@ impl Animation for RunAnimation { skeleton_attr.wing_in.1, skeleton_attr.wing_in.2, ); - next.wing_in_r.ori = Quaternion::rotation_y(-1.3); + next.wing_in_r.ori = Quaternion::rotation_y(-0.8); next.wing_in_r.scale = Vec3::one() * 1.05; next.wing_out_l.offset = Vec3::new( @@ -167,7 +167,7 @@ impl Animation for RunAnimation { skeleton_attr.wing_out.1, skeleton_attr.wing_out.2 - 1.4, ); - next.wing_out_l.ori = Quaternion::rotation_y(-2.5); + next.wing_out_l.ori = Quaternion::rotation_y(-2.0); next.wing_out_l.scale = Vec3::one() * 1.05; next.wing_out_r.offset = Vec3::new( @@ -175,7 +175,7 @@ impl Animation for RunAnimation { skeleton_attr.wing_out.1, skeleton_attr.wing_out.2 - 1.4, ); - next.wing_out_r.ori = Quaternion::rotation_y(2.5); + next.wing_out_r.ori = Quaternion::rotation_y(2.0); next.wing_out_r.scale = Vec3::one() * 1.05; next