dragon adjustments. tweaks to humanoid run, fix for first person glide and other small fixes

This commit is contained in:
jshipsey 2020-05-09 05:29:09 -04:00
parent 9d2277ecd4
commit a6de8159f6
13 changed files with 46 additions and 47 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -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,
);

View File

@ -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,
);

View File

@ -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;

View File

@ -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),

View File

@ -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();

View File

@ -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);

View File

@ -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(

View File

@ -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)]

View File

@ -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