streamlined body part naming scheme, swapped quadruped to quadruped_small, rewrote mesh names to reflect body type instead of npckind. finally.

This commit is contained in:
jshipsey 2019-10-24 21:26:32 -04:00
parent 345095a183
commit c503f6e063
103 changed files with 364 additions and 523 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,13 +1,13 @@
pub mod biped_large;
pub mod bird_medium;
pub mod bird_small;
pub mod dragon;
pub mod fish_medium;
pub mod fish_small;
pub mod humanoid;
pub mod object;
pub mod quadruped;
pub mod quadruped_medium;
pub mod bird_medium;
pub mod fish_medium;
pub mod dragon;
pub mod bird_small;
pub mod fish_small;
pub mod biped_large;
pub mod quadruped_small;
use specs::{Component, FlaggedStorage};
use specs_idvs::IDVStorage;
@ -15,7 +15,7 @@ use specs_idvs::IDVStorage;
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
pub enum Body {
Humanoid(humanoid::Body),
Quadruped(quadruped::Body),
QuadrupedSmall(quadruped_small::Body),
QuadrupedMedium(quadruped_medium::Body),
BirdMedium(bird_medium::Body),
FishMedium(fish_medium::Body),

View File

@ -31,7 +31,6 @@ pub enum Torso {
}
const ALL_TORSOS: [Torso; 1] = [Torso::Default];
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
pub enum WingL {
Default,

View File

@ -15,9 +15,6 @@ pub struct Body {
pub foot_fr: FootFR,
pub foot_bl: FootBL,
pub foot_br: FootBR,
}
impl Body {
pub fn random() -> Self {
@ -36,8 +33,6 @@ impl Body {
foot_fr: *(&ALL_FOOT_FRS).choose(&mut rng).unwrap(),
foot_bl: *(&ALL_FOOT_BLS).choose(&mut rng).unwrap(),
foot_br: *(&ALL_FOOT_BRS).choose(&mut rng).unwrap(),
}
}
}

View File

@ -19,7 +19,6 @@ impl Body {
tail: *(&ALL_TAILS).choose(&mut rng).unwrap(),
fin_l: *(&ALL_FIN_LS).choose(&mut rng).unwrap(),
fin_r: *(&ALL_FIN_RS).choose(&mut rng).unwrap(),
}
}
}

View File

@ -15,7 +15,6 @@ impl Body {
}
}
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
pub enum Torso {
Default,

View File

@ -16,7 +16,10 @@ mod visual;
// Reexports
pub use admin::Admin;
pub use agent::Agent;
pub use body::{humanoid, object, quadruped, quadruped_medium, bird_medium, fish_medium, dragon, bird_small, fish_small, biped_large, Body};
pub use body::{
biped_large, bird_medium, bird_small, dragon, fish_medium, fish_small, humanoid, object,
quadruped_medium, quadruped_small, Body,
};
pub use character_state::{ActionState, CharacterState, MovementState};
pub use controller::{
ControlEvent, Controller, ControllerInputs, InventoryManip, MountState, Mounting,

View File

@ -553,7 +553,7 @@ fn alignment_to_agent(alignment: &str, target: EcsEntity) -> Option<comp::Agent>
fn kind_to_body(kind: NpcKind) -> comp::Body {
match kind {
NpcKind::Humanoid => comp::Body::Humanoid(comp::humanoid::Body::random()),
NpcKind::Pig => comp::Body::Quadruped(comp::quadruped::Body::random()),
NpcKind::Pig => comp::Body::QuadrupedSmall(comp::quadruped_small::Body::random()),
NpcKind::Wolf => comp::Body::QuadrupedMedium(comp::quadruped_medium::Body::random()),
}
}

View File

@ -38,60 +38,48 @@ impl Animation for IdleAnimation {
* 0.25,
);
next.knight_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_head.scale = Vec3::one() / 10.88;
next.knight_upper_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_upper_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_upper_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_upper_torso.scale = Vec3::one() / 10.88;
next.knight_lower_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_lower_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_lower_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_lower_torso.scale = Vec3::one() / 10.88;
next.knight_shoulder_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_shoulder_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_l.scale = Vec3::one() / 10.88;
next.knight_shoulder_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_shoulder_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_r.scale = Vec3::one() / 10.88;
next.knight_hand_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_hand_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_l.scale = Vec3::one() / 10.88;
next.knight_hand_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_hand_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_r.scale = Vec3::one() / 10.88;
next.knight_leg_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_leg_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_l.scale = Vec3::one() / 10.88;
next.knight_leg_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_leg_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_r.scale = Vec3::one() / 10.88;
next.knight_foot_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_foot_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_l.scale = Vec3::one() / 10.88;
next.knight_foot_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_foot_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_r.scale = Vec3::one() / 10.88;
next
}

View File

@ -25,61 +25,48 @@ impl Animation for JumpAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.knight_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_head.scale = Vec3::one() / 10.88;
next.knight_upper_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_upper_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_upper_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_upper_torso.scale = Vec3::one() / 10.88;
next.knight_lower_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_lower_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_lower_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_lower_torso.scale = Vec3::one() / 10.88;
next.knight_shoulder_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_shoulder_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_l.scale = Vec3::one() / 10.88;
next.knight_shoulder_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_shoulder_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_r.scale = Vec3::one() / 10.88;
next.knight_hand_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_hand_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_l.scale = Vec3::one() / 10.88;
next.knight_hand_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_hand_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_r.scale = Vec3::one() / 10.88;
next.knight_leg_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_leg_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_l.scale = Vec3::one() / 10.88;
next.knight_leg_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_leg_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_r.scale = Vec3::one() / 10.88;
next.knight_foot_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_foot_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_l.scale = Vec3::one() / 10.88;
next.knight_foot_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_foot_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_r.scale = Vec3::one() / 10.88;
next
}

View File

@ -23,9 +23,6 @@ pub struct BipedLargeSkeleton {
knight_leg_r: Bone,
knight_foot_l: Bone,
knight_foot_r: Bone,
}
impl BipedLargeSkeleton {
@ -42,7 +39,6 @@ impl BipedLargeSkeleton {
knight_leg_r: Bone::default(),
knight_foot_l: Bone::default(),
knight_foot_r: Bone::default(),
}
}
}
@ -55,17 +51,18 @@ impl Skeleton for BipedLargeSkeleton {
let leg_l_mat = self.knight_leg_l.compute_base_matrix();
let leg_r_mat = self.knight_leg_r.compute_base_matrix();
[
FigureBoneData::new(self.knight_head.compute_base_matrix()),
FigureBoneData::new(
upper_torso_mat,
),
FigureBoneData::new(upper_torso_mat),
FigureBoneData::new(self.knight_lower_torso.compute_base_matrix() * upper_torso_mat),
FigureBoneData::new(shoulder_l_mat * upper_torso_mat),
FigureBoneData::new(shoulder_r_mat * upper_torso_mat),
FigureBoneData::new(self.knight_hand_l.compute_base_matrix() * shoulder_l_mat * upper_torso_mat),
FigureBoneData::new(self.knight_hand_r.compute_base_matrix() * shoulder_r_mat * upper_torso_mat),
FigureBoneData::new(
self.knight_hand_l.compute_base_matrix() * shoulder_l_mat * upper_torso_mat,
),
FigureBoneData::new(
self.knight_hand_r.compute_base_matrix() * shoulder_r_mat * upper_torso_mat,
),
FigureBoneData::new(leg_l_mat),
FigureBoneData::new(leg_r_mat),
FigureBoneData::new(self.knight_foot_l.compute_base_matrix() * leg_l_mat),
@ -79,12 +76,13 @@ impl Skeleton for BipedLargeSkeleton {
}
fn interpolate(&mut self, target: &Self, dt: f32) {
self.knight_head
.interpolate(&target.knight_head, dt);
self.knight_upper_torso.interpolate(&target.knight_upper_torso, dt);
self.knight_head.interpolate(&target.knight_head, dt);
self.knight_upper_torso
.interpolate(&target.knight_upper_torso, dt);
self.knight_lower_torso
.interpolate(&target.knight_lower_torso, dt);
self.knight_shoulder_l.interpolate(&target.knight_shoulder_l, dt);
self.knight_shoulder_l
.interpolate(&target.knight_shoulder_l, dt);
self.knight_shoulder_r
.interpolate(&target.knight_shoulder_r, dt);
self.knight_hand_l.interpolate(&target.knight_hand_l, dt);
@ -93,7 +91,5 @@ impl Skeleton for BipedLargeSkeleton {
self.knight_leg_r.interpolate(&target.knight_leg_r, dt);
self.knight_foot_l.interpolate(&target.knight_foot_l, dt);
self.knight_foot_r.interpolate(&target.knight_foot_r, dt);
}
}

View File

@ -38,60 +38,48 @@ impl Animation for RunAnimation {
* 0.25,
);
next.knight_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_head.scale = Vec3::one() / 10.88;
next.knight_upper_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_upper_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_upper_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_upper_torso.scale = Vec3::one() / 10.88;
next.knight_lower_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_lower_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_lower_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_lower_torso.scale = Vec3::one() / 10.88;
next.knight_shoulder_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_shoulder_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_l.scale = Vec3::one() / 10.88;
next.knight_shoulder_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_shoulder_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_shoulder_r.scale = Vec3::one() / 10.88;
next.knight_hand_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_hand_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_l.scale = Vec3::one() / 10.88;
next.knight_hand_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_hand_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_hand_r.scale = Vec3::one() / 10.88;
next.knight_leg_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_leg_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_l.scale = Vec3::one() / 10.88;
next.knight_leg_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_leg_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_leg_r.scale = Vec3::one() / 10.88;
next.knight_foot_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_foot_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_l.scale = Vec3::one() / 10.88;
next.knight_foot_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.knight_foot_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.knight_foot_r.scale = Vec3::one() / 10.88;
next
}

View File

@ -38,14 +38,12 @@ impl Animation for IdleAnimation {
* 0.25,
);
next.duck_m_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.duck_m_head.ori =
Quaternion::rotation_z(duck_m_look.x) * Quaternion::rotation_x(duck_m_look.y);
next.duck_m_head.scale = Vec3::one() / 10.88;
next.duck_m_torso.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.duck_m_torso.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.duck_m_torso.ori = Quaternion::rotation_x(0.0);
next.duck_m_torso.scale = Vec3::one() * 1.01;
@ -54,8 +52,7 @@ impl Animation for IdleAnimation {
next.duck_m_tail.scale = Vec3::one() * 0.98;
next.duck_m_wing_l.offset = Vec3::new(0.0, -13.0, 8.0) / 11.0;
next.duck_m_wing_l.ori = Quaternion::rotation_z(0.0)
* Quaternion::rotation_x(0.0);
next.duck_m_wing_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_wing_l.scale = Vec3::one() / 11.0;
next.duck_m_wing_r.offset = Vec3::new(0.0, -11.7, 11.0) / 11.0;

View File

@ -25,15 +25,11 @@ impl Animation for JumpAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.duck_m_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.duck_m_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_head.scale = Vec3::one() / 10.88;
next.duck_m_torso.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.duck_m_torso.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.duck_m_torso.ori = Quaternion::rotation_x(0.0);
next.duck_m_torso.scale = Vec3::one() * 1.01;
@ -42,8 +38,7 @@ impl Animation for JumpAnimation {
next.duck_m_tail.scale = Vec3::one() * 0.98;
next.duck_m_wing_l.offset = Vec3::new(0.0, -13.0, 8.0) / 11.0;
next.duck_m_wing_l.ori = Quaternion::rotation_z(0.0)
* Quaternion::rotation_x(0.0);
next.duck_m_wing_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_wing_l.scale = Vec3::one() / 11.0;
next.duck_m_wing_r.offset = Vec3::new(0.0, -11.7, 11.0) / 11.0;

View File

@ -19,7 +19,6 @@ pub struct BirdMediumSkeleton {
duck_m_wing_r: Bone,
duck_m_leg_l: Bone,
duck_m_leg_r: Bone,
}
impl BirdMediumSkeleton {
@ -32,8 +31,6 @@ impl BirdMediumSkeleton {
duck_m_wing_r: Bone::default(),
duck_m_leg_l: Bone::default(),
duck_m_leg_r: Bone::default(),
}
}
}
@ -42,12 +39,9 @@ impl Skeleton for BirdMediumSkeleton {
fn compute_matrices(&self) -> [FigureBoneData; 16] {
let torso_mat = self.duck_m_torso.compute_base_matrix();
[
FigureBoneData::new(self.duck_m_head.compute_base_matrix() * torso_mat),
FigureBoneData::new(
torso_mat,
),
FigureBoneData::new(torso_mat),
FigureBoneData::new(self.duck_m_tail.compute_base_matrix() * torso_mat),
FigureBoneData::new(self.duck_m_wing_l.compute_base_matrix() * torso_mat),
FigureBoneData::new(self.duck_m_wing_r.compute_base_matrix() * torso_mat),
@ -66,14 +60,11 @@ impl Skeleton for BirdMediumSkeleton {
}
fn interpolate(&mut self, target: &Self, dt: f32) {
self.duck_m_head
.interpolate(&target.duck_m_head, dt);
self.duck_m_head.interpolate(&target.duck_m_head, dt);
self.duck_m_torso.interpolate(&target.duck_m_torso, dt);
self.duck_m_tail
.interpolate(&target.duck_m_tail, dt);
self.duck_m_tail.interpolate(&target.duck_m_tail, dt);
self.duck_m_wing_l.interpolate(&target.duck_m_wing_l, dt);
self.duck_m_wing_r
.interpolate(&target.duck_m_wing_r, dt);
self.duck_m_wing_r.interpolate(&target.duck_m_wing_r, dt);
self.duck_m_leg_l.interpolate(&target.duck_m_leg_l, dt);
self.duck_m_leg_r.interpolate(&target.duck_m_leg_r, dt);
}

View File

@ -38,14 +38,11 @@ impl Animation for RunAnimation {
* 0.25,
);
next.duck_m_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.duck_m_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_head.scale = Vec3::one() / 10.88;
next.duck_m_torso.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.duck_m_torso.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.duck_m_torso.ori = Quaternion::rotation_x(0.0);
next.duck_m_torso.scale = Vec3::one() * 1.01;
@ -54,8 +51,7 @@ impl Animation for RunAnimation {
next.duck_m_tail.scale = Vec3::one() * 0.98;
next.duck_m_wing_l.offset = Vec3::new(0.0, -13.0, 8.0) / 11.0;
next.duck_m_wing_l.ori = Quaternion::rotation_z(0.0)
* Quaternion::rotation_x(0.0);
next.duck_m_wing_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.duck_m_wing_l.scale = Vec3::one() / 11.0;
next.duck_m_wing_r.offset = Vec3::new(0.0, -11.7, 11.0) / 11.0;

View File

@ -38,25 +38,20 @@ impl Animation for IdleAnimation {
* 0.25,
);
next.crow_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_head.scale = Vec3::one() / 10.88;
next.crow_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_torso.scale = Vec3::one() / 10.88;
next.crow_wing_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_wing_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_l.scale = Vec3::one() / 10.88;
next.crow_wing_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_wing_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_r.scale = Vec3::one() / 10.88;
next

View File

@ -25,26 +25,20 @@ impl Animation for JumpAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.crow_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_head.scale = Vec3::one() / 10.88;
next.crow_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_torso.scale = Vec3::one() / 10.88;
next.crow_wing_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_wing_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_l.scale = Vec3::one() / 10.88;
next.crow_wing_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_wing_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_r.scale = Vec3::one() / 10.88;
next

View File

@ -25,7 +25,6 @@ impl BirdSmallSkeleton {
crow_torso: Bone::default(),
crow_wing_l: Bone::default(),
crow_wing_r: Bone::default(),
}
}
}
@ -34,12 +33,9 @@ impl Skeleton for BirdSmallSkeleton {
fn compute_matrices(&self) -> [FigureBoneData; 16] {
let torso_mat = self.crow_torso.compute_base_matrix();
[
FigureBoneData::new(self.crow_head.compute_base_matrix() * torso_mat),
FigureBoneData::new(
torso_mat,
),
FigureBoneData::new(torso_mat),
FigureBoneData::new(self.crow_wing_l.compute_base_matrix() * torso_mat),
FigureBoneData::new(self.crow_wing_r.compute_base_matrix() * torso_mat),
FigureBoneData::default(),
@ -58,11 +54,9 @@ impl Skeleton for BirdSmallSkeleton {
}
fn interpolate(&mut self, target: &Self, dt: f32) {
self.crow_head
.interpolate(&target.crow_head, dt);
self.crow_head.interpolate(&target.crow_head, dt);
self.crow_torso.interpolate(&target.crow_torso, dt);
self.crow_wing_l.interpolate(&target.crow_wing_l, dt);
self.crow_wing_r
.interpolate(&target.crow_wing_r, dt);
self.crow_wing_r.interpolate(&target.crow_wing_r, dt);
}
}

View File

@ -38,25 +38,20 @@ impl Animation for RunAnimation {
* 0.25,
);
next.crow_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_head.scale = Vec3::one() / 10.88;
next.crow_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_torso.scale = Vec3::one() / 10.88;
next.crow_wing_l.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_wing_l.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_l.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_l.scale = Vec3::one() / 10.88;
next.crow_wing_r.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.crow_wing_r.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_r.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.crow_wing_r.scale = Vec3::one() / 10.88;
next

View File

@ -38,69 +38,55 @@ impl Animation for IdleAnimation {
* 0.25,
);
next.dragon_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.dragon_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.dragon_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.dragon_head.scale = Vec3::one() / 10.88;
next.dragon_chest_front.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_front.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_front.ori = Quaternion::rotation_x(0.0);
next.dragon_chest_front.scale = Vec3::one() * 1.01;
next.dragon_chest_rear.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_rear.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_rear.ori = Quaternion::rotation_x(0.0);
next.dragon_chest_rear.scale = Vec3::one() * 1.01;
next.dragon_tail_front.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_front.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_front.ori = Quaternion::rotation_x(0.0);
next.dragon_tail_front.scale = Vec3::one() * 1.01;
next.dragon_tail_rear.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_rear.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_rear.ori = Quaternion::rotation_x(0.0);
next.dragon_tail_rear.scale = Vec3::one() * 1.01;
next.dragon_wing_in_l.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_l.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_l.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_in_l.scale = Vec3::one() * 1.01;
next.dragon_wing_in_r.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_r.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_r.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_in_r.scale = Vec3::one() * 1.01;
next.dragon_wing_out_l.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_l.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_l.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_out_l.scale = Vec3::one() * 1.01;
next.dragon_wing_out_r.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_r.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_r.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_out_r.scale = Vec3::one() * 1.01;
next.dragon_foot_fl.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fl.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fl.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_fl.scale = Vec3::one() * 1.01;
next.dragon_foot_fr.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fr.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fr.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_fr.scale = Vec3::one() * 1.01;
next.dragon_foot_bl.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_bl.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_bl.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_bl.scale = Vec3::one() * 1.01;
next.dragon_foot_br.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_br.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_br.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_br.scale = Vec3::one() * 1.01;
next

View File

@ -25,70 +25,55 @@ impl Animation for JumpAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.dragon_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.dragon_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.dragon_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.dragon_head.scale = Vec3::one() / 10.88;
next.dragon_chest_front.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_front.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_front.ori = Quaternion::rotation_x(0.0);
next.dragon_chest_front.scale = Vec3::one() * 1.01;
next.dragon_chest_rear.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_rear.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_rear.ori = Quaternion::rotation_x(0.0);
next.dragon_chest_rear.scale = Vec3::one() * 1.01;
next.dragon_tail_front.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_front.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_front.ori = Quaternion::rotation_x(0.0);
next.dragon_tail_front.scale = Vec3::one() * 1.01;
next.dragon_tail_rear.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_rear.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_rear.ori = Quaternion::rotation_x(0.0);
next.dragon_tail_rear.scale = Vec3::one() * 1.01;
next.dragon_wing_in_l.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_l.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_l.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_in_l.scale = Vec3::one() * 1.01;
next.dragon_wing_in_r.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_r.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_r.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_in_r.scale = Vec3::one() * 1.01;
next.dragon_wing_out_l.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_l.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_l.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_out_l.scale = Vec3::one() * 1.01;
next.dragon_wing_out_r.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_r.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_r.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_out_r.scale = Vec3::one() * 1.01;
next.dragon_foot_fl.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fl.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fl.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_fl.scale = Vec3::one() * 1.01;
next.dragon_foot_fr.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fr.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fr.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_fr.scale = Vec3::one() * 1.01;
next.dragon_foot_bl.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_bl.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_bl.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_bl.scale = Vec3::one() * 1.01;
next.dragon_foot_br.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_br.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_br.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_br.scale = Vec3::one() * 1.01;
next

View File

@ -25,7 +25,6 @@ pub struct DragonSkeleton {
dragon_foot_fr: Bone,
dragon_foot_bl: Bone,
dragon_foot_br: Bone,
}
impl DragonSkeleton {
@ -44,8 +43,6 @@ impl DragonSkeleton {
dragon_foot_fr: Bone::default(),
dragon_foot_bl: Bone::default(),
dragon_foot_br: Bone::default(),
}
}
}
@ -57,12 +54,9 @@ impl Skeleton for DragonSkeleton {
let wing_in_r_mat = self.dragon_wing_in_r.compute_base_matrix();
let tail_front_mat = self.dragon_tail_front.compute_base_matrix();
[
FigureBoneData::new(self.dragon_head.compute_base_matrix() * chest_front_mat),
FigureBoneData::new(
chest_front_mat,
),
FigureBoneData::new(chest_front_mat),
FigureBoneData::new(self.dragon_chest_rear.compute_base_matrix() * chest_front_mat),
FigureBoneData::new(tail_front_mat),
FigureBoneData::new(self.dragon_tail_rear.compute_base_matrix() * tail_front_mat),
@ -82,19 +76,25 @@ impl Skeleton for DragonSkeleton {
fn interpolate(&mut self, target: &Self, dt: f32) {
self.dragon_head.interpolate(&target.dragon_head, dt);
self.dragon_chest_front.interpolate(&target.dragon_chest_front, dt);
self.dragon_chest_rear.interpolate(&target.dragon_chest_rear, dt);
self.dragon_tail_front.interpolate(&target.dragon_tail_front, dt);
self.dragon_tail_rear.interpolate(&target.dragon_tail_rear, dt);
self.dragon_wing_in_l.interpolate(&target.dragon_wing_in_l, dt);
self.dragon_wing_in_r.interpolate(&target.dragon_wing_in_r, dt);
self.dragon_wing_out_l.interpolate(&target.dragon_wing_out_l, dt);
self.dragon_wing_out_r.interpolate(&target.dragon_wing_out_r, dt);
self.dragon_chest_front
.interpolate(&target.dragon_chest_front, dt);
self.dragon_chest_rear
.interpolate(&target.dragon_chest_rear, dt);
self.dragon_tail_front
.interpolate(&target.dragon_tail_front, dt);
self.dragon_tail_rear
.interpolate(&target.dragon_tail_rear, dt);
self.dragon_wing_in_l
.interpolate(&target.dragon_wing_in_l, dt);
self.dragon_wing_in_r
.interpolate(&target.dragon_wing_in_r, dt);
self.dragon_wing_out_l
.interpolate(&target.dragon_wing_out_l, dt);
self.dragon_wing_out_r
.interpolate(&target.dragon_wing_out_r, dt);
self.dragon_foot_fl.interpolate(&target.dragon_foot_fl, dt);
self.dragon_foot_fr.interpolate(&target.dragon_foot_fr, dt);
self.dragon_foot_bl.interpolate(&target.dragon_foot_bl, dt);
self.dragon_foot_br.interpolate(&target.dragon_foot_br, dt);
}
}

View File

@ -38,69 +38,55 @@ impl Animation for RunAnimation {
* 0.25,
);
next.dragon_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.dragon_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.dragon_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.dragon_head.scale = Vec3::one() / 10.88;
next.dragon_chest_front.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_front.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_front.ori = Quaternion::rotation_x(0.0);
next.dragon_chest_front.scale = Vec3::one() * 1.01;
next.dragon_chest_rear.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_rear.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_chest_rear.ori = Quaternion::rotation_x(0.0);
next.dragon_chest_rear.scale = Vec3::one() * 1.01;
next.dragon_tail_front.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_front.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_front.ori = Quaternion::rotation_x(0.0);
next.dragon_tail_front.scale = Vec3::one() * 1.01;
next.dragon_tail_rear.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_rear.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_tail_rear.ori = Quaternion::rotation_x(0.0);
next.dragon_tail_rear.scale = Vec3::one() * 1.01;
next.dragon_wing_in_l.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_l.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_l.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_in_l.scale = Vec3::one() * 1.01;
next.dragon_wing_in_r.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_r.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_in_r.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_in_r.scale = Vec3::one() * 1.01;
next.dragon_wing_out_l.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_l.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_l.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_out_l.scale = Vec3::one() * 1.01;
next.dragon_wing_out_r.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_r.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_wing_out_r.ori = Quaternion::rotation_x(0.0);
next.dragon_wing_out_r.scale = Vec3::one() * 1.01;
next.dragon_foot_fl.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fl.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fl.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_fl.scale = Vec3::one() * 1.01;
next.dragon_foot_fr.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fr.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_fr.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_fr.scale = Vec3::one() * 1.01;
next.dragon_foot_bl.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_bl.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_bl.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_bl.scale = Vec3::one() * 1.01;
next.dragon_foot_br.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_br.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.dragon_foot_br.ori = Quaternion::rotation_x(0.0);
next.dragon_foot_br.scale = Vec3::one() * 1.01;
next

View File

@ -38,14 +38,12 @@ impl Animation for IdleAnimation {
* 0.25,
);
next.marlin_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.marlin_head.ori =
Quaternion::rotation_z(duck_m_look.x) * Quaternion::rotation_x(duck_m_look.y);
next.marlin_head.scale = Vec3::one() / 10.88;
next.marlin_torso.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.marlin_torso.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.marlin_torso.ori = Quaternion::rotation_x(0.0);
next.marlin_torso.scale = Vec3::one() * 1.01;
@ -54,8 +52,7 @@ impl Animation for IdleAnimation {
next.marlin_rear.scale = Vec3::one() * 0.98;
next.marlin_tail.offset = Vec3::new(0.0, -13.0, 8.0) / 11.0;
next.marlin_tail.ori = Quaternion::rotation_z(0.0)
* Quaternion::rotation_x(0.0);
next.marlin_tail.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_tail.scale = Vec3::one() / 11.0;
next.marlin_fin_l.offset = Vec3::new(0.0, -11.7, 11.0) / 11.0;

View File

@ -25,15 +25,11 @@ impl Animation for JumpAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.marlin_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.marlin_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_head.scale = Vec3::one() / 10.88;
next.marlin_torso.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.marlin_torso.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.marlin_torso.ori = Quaternion::rotation_x(0.0);
next.marlin_torso.scale = Vec3::one() * 1.01;
@ -42,8 +38,7 @@ impl Animation for JumpAnimation {
next.marlin_rear.scale = Vec3::one() * 0.98;
next.marlin_tail.offset = Vec3::new(0.0, -13.0, 8.0) / 11.0;
next.marlin_tail.ori = Quaternion::rotation_z(0.0)
* Quaternion::rotation_x(0.0);
next.marlin_tail.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_tail.scale = Vec3::one() / 11.0;
next.marlin_fin_l.offset = Vec3::new(0.0, -11.7, 11.0) / 11.0;

View File

@ -18,7 +18,6 @@ pub struct FishMediumSkeleton {
marlin_tail: Bone,
marlin_fin_l: Bone,
marlin_fin_r: Bone,
}
impl FishMediumSkeleton {
@ -30,7 +29,6 @@ impl FishMediumSkeleton {
marlin_tail: Bone::default(),
marlin_fin_l: Bone::default(),
marlin_fin_r: Bone::default(),
}
}
}
@ -40,12 +38,9 @@ impl Skeleton for FishMediumSkeleton {
let torso_mat = self.marlin_torso.compute_base_matrix();
let rear_mat = self.marlin_rear.compute_base_matrix();
[
FigureBoneData::new(self.marlin_head.compute_base_matrix() * torso_mat),
FigureBoneData::new(
torso_mat,
),
FigureBoneData::new(torso_mat),
FigureBoneData::new(rear_mat * torso_mat),
FigureBoneData::new(self.marlin_tail.compute_base_matrix() * rear_mat),
FigureBoneData::new(self.marlin_fin_l.compute_base_matrix() * rear_mat),
@ -64,14 +59,11 @@ impl Skeleton for FishMediumSkeleton {
}
fn interpolate(&mut self, target: &Self, dt: f32) {
self.marlin_head
.interpolate(&target.marlin_head, dt);
self.marlin_head.interpolate(&target.marlin_head, dt);
self.marlin_torso.interpolate(&target.marlin_torso, dt);
self.marlin_rear
.interpolate(&target.marlin_rear, dt);
self.marlin_rear.interpolate(&target.marlin_rear, dt);
self.marlin_tail.interpolate(&target.marlin_tail, dt);
self.marlin_fin_l
.interpolate(&target.marlin_fin_l, dt);
self.marlin_fin_l.interpolate(&target.marlin_fin_l, dt);
self.marlin_fin_r.interpolate(&target.marlin_fin_r, dt);
}
}

View File

@ -2,7 +2,7 @@ use super::{
super::{Animation, SkeletonAttr},
FishMediumSkeleton,
};
use std::{f32::consts::PI};
use std::f32::consts::PI;
use vek::*;
pub struct RunAnimation;
@ -25,15 +25,11 @@ impl Animation for RunAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.marlin_head.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.marlin_head.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_head.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_head.scale = Vec3::one() / 10.88;
next.marlin_torso.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.marlin_torso.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.marlin_torso.ori = Quaternion::rotation_x(0.0);
next.marlin_torso.scale = Vec3::one() * 1.01;
@ -42,8 +38,7 @@ impl Animation for RunAnimation {
next.marlin_rear.scale = Vec3::one() * 0.98;
next.marlin_tail.offset = Vec3::new(0.0, -13.0, 8.0) / 11.0;
next.marlin_tail.ori = Quaternion::rotation_z(0.0)
* Quaternion::rotation_x(0.0);
next.marlin_tail.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.marlin_tail.scale = Vec3::one() / 11.0;
next.marlin_fin_l.offset = Vec3::new(0.0, -11.7, 11.0) / 11.0;

View File

@ -38,14 +38,11 @@ impl Animation for IdleAnimation {
* 0.25,
);
next.cardinalfish_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.cardinalfish_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.cardinalfish_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.cardinalfish_torso.scale = Vec3::one() / 10.88;
next.cardinalfish_tail.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.cardinalfish_tail.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.cardinalfish_tail.ori = Quaternion::rotation_x(0.0);
next.cardinalfish_tail.scale = Vec3::one() * 1.01;

View File

@ -25,15 +25,11 @@ impl Animation for JumpAnimation {
let wave_slow = (anim_time as f32 * 3.5 + PI).sin();
let wave_slow_cos = (anim_time as f32 * 3.5 + PI).cos();
next.cardinalfish_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.cardinalfish_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.cardinalfish_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.cardinalfish_torso.scale = Vec3::one() / 10.88;
next.cardinalfish_tail.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.cardinalfish_tail.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.cardinalfish_tail.ori = Quaternion::rotation_x(0.0);
next.cardinalfish_tail.scale = Vec3::one() * 1.01;

View File

@ -14,7 +14,6 @@ use crate::render::FigureBoneData;
pub struct FishSmallSkeleton {
cardinalfish_torso: Bone,
cardinalfish_tail: Bone,
}
impl FishSmallSkeleton {
@ -30,7 +29,6 @@ impl Skeleton for FishSmallSkeleton {
fn compute_matrices(&self) -> [FigureBoneData; 16] {
let torso_mat = self.cardinalfish_torso.compute_base_matrix();
[
FigureBoneData::new(torso_mat),
FigureBoneData::new(self.cardinalfish_tail.compute_base_matrix() * torso_mat),
@ -54,6 +52,7 @@ impl Skeleton for FishSmallSkeleton {
fn interpolate(&mut self, target: &Self, dt: f32) {
self.cardinalfish_torso
.interpolate(&target.cardinalfish_torso, dt);
self.cardinalfish_tail.interpolate(&target.cardinalfish_tail, dt);
self.cardinalfish_tail
.interpolate(&target.cardinalfish_tail, dt);
}
}

View File

@ -38,14 +38,11 @@ impl Animation for RunAnimation {
* 0.25,
);
next.cardinalfish_torso.offset = Vec3::new(0.0, 7.5, 15.0) / 11.0;
next.cardinalfish_torso.ori =
Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.cardinalfish_torso.ori = Quaternion::rotation_z(0.0) * Quaternion::rotation_x(0.0);
next.cardinalfish_torso.scale = Vec3::one() / 10.88;
next.cardinalfish_tail.offset =
Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.cardinalfish_tail.offset = Vec3::new(0.0, 4.5 - wave_ultra_slow_cos * 0.12, 2.0);
next.cardinalfish_tail.ori = Quaternion::rotation_x(0.0);
next.cardinalfish_tail.scale = Vec3::one() * 1.01;

View File

@ -1,14 +1,14 @@
pub mod biped_large;
pub mod bird_medium;
pub mod bird_small;
pub mod character;
pub mod dragon;
pub mod fish_medium;
pub mod fish_small;
pub mod fixture;
pub mod object;
pub mod quadruped;
pub mod quadrupedmedium;
pub mod birdmedium;
pub mod fishmedium;
pub mod dragon;
pub mod bird_small;
pub mod fish_small;
pub mod biped_large;
pub mod quadruped_medium;
pub mod quadruped_small;
use crate::render::FigureBoneData;
use common::comp::{self, item::Tool};

View File

@ -1,6 +1,6 @@
use super::{
super::{Animation, SkeletonAttr},
QuadrupedSkeleton,
QuadrupedSmallSkeleton,
};
use std::{f32::consts::PI, ops::Mul};
use vek::*;
@ -8,7 +8,7 @@ use vek::*;
pub struct IdleAnimation;
impl Animation for IdleAnimation {
type Skeleton = QuadrupedSkeleton;
type Skeleton = QuadrupedSmallSkeleton;
type Dependency = (f64);
fn update_skeleton(

View File

@ -1,6 +1,6 @@
use super::{
super::{Animation, SkeletonAttr},
QuadrupedSkeleton,
QuadrupedSmallSkeleton,
};
use std::f32::consts::PI;
use vek::*;
@ -8,7 +8,7 @@ use vek::*;
pub struct JumpAnimation;
impl Animation for JumpAnimation {
type Skeleton = QuadrupedSkeleton;
type Skeleton = QuadrupedSmallSkeleton;
type Dependency = (f32, f64);
fn update_skeleton(

View File

@ -11,7 +11,7 @@ use super::{Bone, Skeleton};
use crate::render::FigureBoneData;
#[derive(Clone)]
pub struct QuadrupedSkeleton {
pub struct QuadrupedSmallSkeleton {
pig_head: Bone,
pig_chest: Bone,
pig_leg_lf: Bone,
@ -20,7 +20,7 @@ pub struct QuadrupedSkeleton {
pig_leg_rb: Bone,
}
impl QuadrupedSkeleton {
impl QuadrupedSmallSkeleton {
pub fn new() -> Self {
Self {
pig_head: Bone::default(),
@ -33,7 +33,7 @@ impl QuadrupedSkeleton {
}
}
impl Skeleton for QuadrupedSkeleton {
impl Skeleton for QuadrupedSmallSkeleton {
fn compute_matrices(&self) -> [FigureBoneData; 16] {
[
FigureBoneData::new(self.pig_head.compute_base_matrix()),

View File

@ -1,13 +1,13 @@
use super::{
super::{Animation, SkeletonAttr},
QuadrupedSkeleton,
QuadrupedSmallSkeleton,
};
use vek::*;
pub struct RunAnimation;
impl Animation for RunAnimation {
type Skeleton = QuadrupedSkeleton;
type Skeleton = QuadrupedSmallSkeleton;
type Dependency = (f32, f64);
fn update_skeleton(

View File

@ -190,13 +190,13 @@ impl FigureModelCache {
None,
None,
],
Body::Quadruped(body) => [
Some(mesh_pig_head(body.head)),
Some(mesh_pig_chest(body.chest)),
Some(mesh_pig_leg_lf(body.leg_l)),
Some(mesh_pig_leg_rf(body.leg_r)),
Some(mesh_pig_leg_lb(body.leg_l)),
Some(mesh_pig_leg_rb(body.leg_r)),
Body::QuadrupedSmall(body) => [
Some(mesh_quadruped_small_head(body.head)),
Some(mesh_quadruped_small_chest(body.chest)),
Some(mesh_quadruped_small_leg_lf(body.leg_l)),
Some(mesh_quadruped_small_leg_rf(body.leg_r)),
Some(mesh_quadruped_small_leg_lb(body.leg_l)),
Some(mesh_quadruped_small_leg_rb(body.leg_r)),
None,
None,
None,
@ -209,17 +209,17 @@ impl FigureModelCache {
None,
],
Body::QuadrupedMedium(body) => [
Some(mesh_wolf_head_upper(body.head_upper)),
Some(mesh_wolf_jaw(body.jaw)),
Some(mesh_wolf_head_lower(body.head_lower)),
Some(mesh_wolf_tail(body.tail)),
Some(mesh_wolf_torso_back(body.torso_back)),
Some(mesh_wolf_torso_mid(body.torso_mid)),
Some(mesh_wolf_ears(body.ears)),
Some(mesh_wolf_foot_lf(body.foot_lf)),
Some(mesh_wolf_foot_rf(body.foot_rf)),
Some(mesh_wolf_foot_lb(body.foot_lb)),
Some(mesh_wolf_foot_rb(body.foot_rb)),
Some(mesh_quadruped_medium_head_upper(body.head_upper)),
Some(mesh_quadruped_medium_jaw(body.jaw)),
Some(mesh_quadruped_medium_head_lower(body.head_lower)),
Some(mesh_quadruped_medium_tail(body.tail)),
Some(mesh_quadruped_medium_torso_back(body.torso_back)),
Some(mesh_quadruped_medium_torso_mid(body.torso_mid)),
Some(mesh_quadruped_medium_ears(body.ears)),
Some(mesh_quadruped_medium_foot_lf(body.foot_lf)),
Some(mesh_quadruped_medium_foot_rf(body.foot_rf)),
Some(mesh_quadruped_medium_foot_lb(body.foot_lb)),
Some(mesh_quadruped_medium_foot_rb(body.foot_rb)),
None,
None,
None,
@ -227,13 +227,13 @@ impl FigureModelCache {
None,
],
Body::BirdMedium(body) => [
Some(mesh_duck_m_head(body.head)),
Some(mesh_duck_m_torso(body.torso)),
Some(mesh_duck_m_tail(body.tail)),
Some(mesh_duck_m_wing_l(body.wing_l)),
Some(mesh_duck_m_wing_r(body.wing_r)),
Some(mesh_duck_m_leg_l(body.leg_l)),
Some(mesh_duck_m_leg_r(body.leg_r)),
Some(mesh_bird_medium_head(body.head)),
Some(mesh_bird_medium_torso(body.torso)),
Some(mesh_bird_medium_tail(body.tail)),
Some(mesh_bird_medium_wing_l(body.wing_l)),
Some(mesh_bird_medium_wing_r(body.wing_r)),
Some(mesh_bird_medium_leg_l(body.leg_l)),
Some(mesh_bird_medium_leg_r(body.leg_r)),
None,
None,
None,
@ -245,12 +245,12 @@ impl FigureModelCache {
None,
],
Body::FishMedium(body) => [
Some(mesh_marlin_head(body.head)),
Some(mesh_marlin_torso(body.torso)),
Some(mesh_marlin_rear(body.rear)),
Some(mesh_marlin_tail(body.tail)),
Some(mesh_marlin_fin_l(body.fin_l)),
Some(mesh_marlin_fin_r(body.fin_r)),
Some(mesh_fish_medium_head(body.head)),
Some(mesh_fish_medium_torso(body.torso)),
Some(mesh_fish_medium_rear(body.rear)),
Some(mesh_fish_medium_tail(body.tail)),
Some(mesh_fish_medium_fin_l(body.fin_l)),
Some(mesh_fish_medium_fin_r(body.fin_r)),
None,
None,
None,
@ -281,10 +281,10 @@ impl FigureModelCache {
None,
],
Body::BirdSmall(body) => [
Some(mesh_crow_head(body.head)),
Some(mesh_crow_torso(body.torso)),
Some(mesh_crow_wing_l(body.wing_l)),
Some(mesh_crow_wing_r(body.wing_r)),
Some(mesh_bird_small_head(body.head)),
Some(mesh_bird_small_torso(body.torso)),
Some(mesh_bird_small_wing_l(body.wing_l)),
Some(mesh_bird_small_wing_r(body.wing_r)),
None,
None,
None,
@ -299,8 +299,8 @@ impl FigureModelCache {
None,
],
Body::FishSmall(body) => [
Some(mesh_cardinalfish_torso(body.torso)),
Some(mesh_cardinalfish_tail(body.tail)),
Some(mesh_fish_small_torso(body.torso)),
Some(mesh_fish_small_tail(body.tail)),
None,
None,
None,
@ -317,17 +317,17 @@ impl FigureModelCache {
None,
],
Body::BipedLarge(body) => [
Some(mesh_knight_head(body.head)),
Some(mesh_knight_upper_torso(body.upper_torso)),
Some(mesh_knight_lower_torso(body.lower_torso)),
Some(mesh_knight_shoulder_l(body.shoulder_l)),
Some(mesh_knight_shoulder_r(body.shoulder_r)),
Some(mesh_knight_hand_l(body.hand_l)),
Some(mesh_knight_hand_r(body.hand_r)),
Some(mesh_knight_leg_l(body.leg_l)),
Some(mesh_knight_leg_r(body.leg_r)),
Some(mesh_knight_foot_l(body.foot_l)),
Some(mesh_knight_foot_r(body.foot_r)),
Some(mesh_biped_large_head(body.head)),
Some(mesh_biped_large_upper_torso(body.upper_torso)),
Some(mesh_biped_large_lower_torso(body.lower_torso)),
Some(mesh_biped_large_shoulder_l(body.shoulder_l)),
Some(mesh_biped_large_shoulder_r(body.shoulder_r)),
Some(mesh_biped_large_hand_l(body.hand_l)),
Some(mesh_biped_large_hand_r(body.hand_r)),
Some(mesh_biped_large_leg_l(body.leg_l)),
Some(mesh_biped_large_leg_r(body.leg_r)),
Some(mesh_biped_large_foot_l(body.foot_l)),
Some(mesh_biped_large_foot_r(body.foot_r)),
None,
None,
None,

View File

@ -6,12 +6,14 @@ use common::comp::humanoid::Body;
use common::{
assets::{self, watch::ReloadIndicator, Asset},
comp::{
biped_large, bird_medium, bird_small, dragon, fish_medium, fish_small,
humanoid::{
Belt, BodyType, Chest, EyeColor, Eyebrows, Foot, Hand, Pants, Race, Shoulder, Skin,
},
item::Tool,
object, quadruped, quadruped_medium, bird_medium, fish_medium, dragon, bird_small, fish_small, biped_large, Item, Itemkind
object, quadruped_small, quadruped_medium, bird_medium, fish_medium, dragon, bird_small, fish_small, biped_large, Item, Itemkind
},
figure::{DynaUnionizer, MatSegment, Material, Segment},
@ -547,271 +549,279 @@ pub fn mesh_draw() -> Mesh<FigurePipeline> {
//}
/////////
pub fn mesh_pig_head(head: quadruped::Head) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_small_head(head: quadruped_small::Head) -> Mesh<FigurePipeline> {
load_mesh(
match head {
quadruped::Head::Default => "npc.pig_purple.pig_head",
quadruped_small::Head::Default => "npc.pig_purple.head",
},
Vec3::new(-6.0, 4.5, 3.0),
)
}
pub fn mesh_pig_chest(chest: quadruped::Chest) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_small_chest(chest: quadruped_small::Chest) -> Mesh<FigurePipeline> {
load_mesh(
match chest {
quadruped::Chest::Default => "npc.pig_purple.pig_chest",
quadruped_small::Chest::Default => "npc.pig_purple.chest",
},
Vec3::new(-5.0, 4.5, 0.0),
)
}
pub fn mesh_pig_leg_lf(leg_l: quadruped::LegL) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_small_leg_lf(leg_l: quadruped_small::LegL) -> Mesh<FigurePipeline> {
load_mesh(
match leg_l {
quadruped::LegL::Default => "npc.pig_purple.pig_leg_l",
quadruped_small::LegL::Default => "npc.pig_purple.leg_l",
},
Vec3::new(0.0, -1.0, -1.5),
)
}
pub fn mesh_pig_leg_rf(leg_r: quadruped::LegR) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_small_leg_rf(leg_r: quadruped_small::LegR) -> Mesh<FigurePipeline> {
load_mesh(
match leg_r {
quadruped::LegR::Default => "npc.pig_purple.pig_leg_r",
quadruped_small::LegR::Default => "npc.pig_purple.leg_r",
},
Vec3::new(0.0, -1.0, -1.5),
)
}
pub fn mesh_pig_leg_lb(leg_l: quadruped::LegL) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_small_leg_lb(leg_l: quadruped_small::LegL) -> Mesh<FigurePipeline> {
load_mesh(
match leg_l {
quadruped::LegL::Default => "npc.pig_purple.pig_leg_l",
quadruped_small::LegL::Default => "npc.pig_purple.leg_l",
},
Vec3::new(0.0, -1.0, -1.5),
)
}
pub fn mesh_pig_leg_rb(leg_r: quadruped::LegR) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_small_leg_rb(leg_r: quadruped_small::LegR) -> Mesh<FigurePipeline> {
load_mesh(
match leg_r {
quadruped::LegR::Default => "npc.pig_purple.pig_leg_r",
quadruped_small::LegR::Default => "npc.pig_purple.leg_r",
},
Vec3::new(0.0, -1.0, -1.5),
)
}
//////
pub fn mesh_wolf_head_upper(upper_head: quadruped_medium::HeadUpper) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_head_upper(
upper_head: quadruped_medium::HeadUpper,
) -> Mesh<FigurePipeline> {
load_mesh(
match upper_head {
quadruped_medium::HeadUpper::Default => "npc.wolf.wolf_head_upper",
quadruped_medium::HeadUpper::Default => "npc.wolf.head_upper",
},
Vec3::new(-7.0, -6.0, -5.5),
)
}
pub fn mesh_wolf_jaw(jaw: quadruped_medium::Jaw) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_jaw(jaw: quadruped_medium::Jaw) -> Mesh<FigurePipeline> {
load_mesh(
match jaw {
quadruped_medium::Jaw::Default => "npc.wolf.wolf_jaw",
quadruped_medium::Jaw::Default => "npc.wolf.jaw",
},
Vec3::new(-3.0, -3.0, -2.5),
)
}
pub fn mesh_wolf_head_lower(head_lower: quadruped_medium::HeadLower) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_head_lower(
head_lower: quadruped_medium::HeadLower,
) -> Mesh<FigurePipeline> {
load_mesh(
match head_lower {
quadruped_medium::HeadLower::Default => "npc.wolf.wolf_head_lower",
quadruped_medium::HeadLower::Default => "npc.wolf.head_lower",
},
Vec3::new(-7.0, -6.0, -5.5),
)
}
pub fn mesh_wolf_tail(tail: quadruped_medium::Tail) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_tail(tail: quadruped_medium::Tail) -> Mesh<FigurePipeline> {
load_mesh(
match tail {
quadruped_medium::Tail::Default => "npc.wolf.wolf_tail",
quadruped_medium::Tail::Default => "npc.wolf.tail",
},
Vec3::new(-2.0, -12.0, -5.0),
)
}
pub fn mesh_wolf_torso_back(torso_back: quadruped_medium::TorsoBack) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_torso_back(
torso_back: quadruped_medium::TorsoBack,
) -> Mesh<FigurePipeline> {
load_mesh(
match torso_back {
quadruped_medium::TorsoBack::Default => "npc.wolf.wolf_torso_back",
quadruped_medium::TorsoBack::Default => "npc.wolf.torso_back",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_wolf_torso_mid(torso_mid: quadruped_medium::TorsoMid) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_torso_mid(
torso_mid: quadruped_medium::TorsoMid,
) -> Mesh<FigurePipeline> {
load_mesh(
match torso_mid {
quadruped_medium::TorsoMid::Default => "npc.wolf.wolf_torso_mid",
quadruped_medium::TorsoMid::Default => "npc.wolf.torso_mid",
},
Vec3::new(-8.0, -5.5, -6.0),
)
}
pub fn mesh_wolf_ears(ears: quadruped_medium::Ears) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_ears(ears: quadruped_medium::Ears) -> Mesh<FigurePipeline> {
load_mesh(
match ears {
quadruped_medium::Ears::Default => "npc.wolf.wolf_ears",
quadruped_medium::Ears::Default => "npc.wolf.ears",
},
Vec3::new(-4.0, -1.0, -1.0),
)
}
pub fn mesh_wolf_foot_lf(foot_lf: quadruped_medium::FootLF) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_foot_lf(foot_lf: quadruped_medium::FootLF) -> Mesh<FigurePipeline> {
load_mesh(
match foot_lf {
quadruped_medium::FootLF::Default => "npc.wolf.wolf_foot_lf",
quadruped_medium::FootLF::Default => "npc.wolf.foot_lf",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
pub fn mesh_wolf_foot_rf(foot_rf: quadruped_medium::FootRF) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_foot_rf(foot_rf: quadruped_medium::FootRF) -> Mesh<FigurePipeline> {
load_mesh(
match foot_rf {
quadruped_medium::FootRF::Default => "npc.wolf.wolf_foot_rf",
quadruped_medium::FootRF::Default => "npc.wolf.foot_rf",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
pub fn mesh_wolf_foot_lb(foot_lb: quadruped_medium::FootLB) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_foot_lb(foot_lb: quadruped_medium::FootLB) -> Mesh<FigurePipeline> {
load_mesh(
match foot_lb {
quadruped_medium::FootLB::Default => "npc.wolf.wolf_foot_lb",
quadruped_medium::FootLB::Default => "npc.wolf.foot_lb",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
pub fn mesh_wolf_foot_rb(foot_rb: quadruped_medium::FootRB) -> Mesh<FigurePipeline> {
pub fn mesh_quadruped_medium_foot_rb(foot_rb: quadruped_medium::FootRB) -> Mesh<FigurePipeline> {
load_mesh(
match foot_rb {
quadruped_medium::FootRB::Default => "npc.wolf.wolf_foot_rb",
quadruped_medium::FootRB::Default => "npc.wolf.foot_rb",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
////
pub fn mesh_duck_m_head(head: bird_medium::Head) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_head(head: bird_medium::Head) -> Mesh<FigurePipeline> {
load_mesh(
match head {
bird_medium::Head::Default => "npc.duck_m.duck_m_head",
bird_medium::Head::Default => "npc.duck_m.head",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_duck_m_torso(torso: bird_medium::Torso) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_torso(torso: bird_medium::Torso) -> Mesh<FigurePipeline> {
load_mesh(
match torso {
bird_medium::Torso::Default => "npc.duck_m.duck_m_body",
bird_medium::Torso::Default => "npc.duck_m.body",
},
Vec3::new(-8.0, -5.5, -6.0),
)
}
pub fn mesh_duck_m_tail(tail: bird_medium::Tail) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_tail(tail: bird_medium::Tail) -> Mesh<FigurePipeline> {
load_mesh(
match tail {
bird_medium::Tail::Default => "npc.duck_m.duck_m_tail",
bird_medium::Tail::Default => "npc.duck_m.tail",
},
Vec3::new(-4.0, -1.0, -1.0),
)
}
pub fn mesh_duck_m_wing_l(wing_l: bird_medium::WingL) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_wing_l(wing_l: bird_medium::WingL) -> Mesh<FigurePipeline> {
load_mesh(
match wing_l {
bird_medium::WingL::Default => "npc.duck_m.duck_m_wing",
bird_medium::WingL::Default => "npc.duck_m.wing",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
pub fn mesh_duck_m_wing_r(wing_r: bird_medium::WingR) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_wing_r(wing_r: bird_medium::WingR) -> Mesh<FigurePipeline> {
load_mesh(
match wing_r {
bird_medium::WingR::Default => "npc.duck_m.duck_m_wing",
bird_medium::WingR::Default => "npc.duck_m.wing",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
pub fn mesh_duck_m_leg_l(leg_l: bird_medium::LegL) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_leg_l(leg_l: bird_medium::LegL) -> Mesh<FigurePipeline> {
load_mesh(
match leg_l {
bird_medium::LegL::Default => "npc.duck_m.duck_m_leg_l",
bird_medium::LegL::Default => "npc.duck_m.leg_l",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
pub fn mesh_duck_m_leg_r(leg_r: bird_medium::LegR) -> Mesh<FigurePipeline> {
pub fn mesh_bird_medium_leg_r(leg_r: bird_medium::LegR) -> Mesh<FigurePipeline> {
load_mesh(
match leg_r {
bird_medium::LegR::Default => "npc.duck_m.duck_m_leg_r",
bird_medium::LegR::Default => "npc.duck_m.leg_r",
},
Vec3::new(-2.5, -4.0, -2.5),
)
}
////
pub fn mesh_marlin_head(head: fish_medium::Head) -> Mesh<FigurePipeline> {
pub fn mesh_fish_medium_head(head: fish_medium::Head) -> Mesh<FigurePipeline> {
load_mesh(
match head {
fish_medium::Head::Default => "npc.marlin.marlin_head",
fish_medium::Head::Default => "npc.marlin.head",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_marlin_torso(torso: fish_medium::Torso) -> Mesh<FigurePipeline> {
pub fn mesh_fish_medium_torso(torso: fish_medium::Torso) -> Mesh<FigurePipeline> {
load_mesh(
match torso {
fish_medium::Torso::Default => "npc.marlin.marlin_torso",
fish_medium::Torso::Default => "npc.marlin.torso",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_marlin_rear(rear: fish_medium::Rear) -> Mesh<FigurePipeline> {
pub fn mesh_fish_medium_rear(rear: fish_medium::Rear) -> Mesh<FigurePipeline> {
load_mesh(
match rear {
fish_medium::Rear::Default => "npc.marlin.marlin_rear",
fish_medium::Rear::Default => "npc.marlin.rear",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_marlin_tail(tail: fish_medium::Tail) -> Mesh<FigurePipeline> {
pub fn mesh_fish_medium_tail(tail: fish_medium::Tail) -> Mesh<FigurePipeline> {
load_mesh(
match tail {
fish_medium::Tail::Default => "npc.marlin.marlin_tail",
fish_medium::Tail::Default => "npc.marlin.tail",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_marlin_fin_l(fin_l: fish_medium::FinL) -> Mesh<FigurePipeline> {
pub fn mesh_fish_medium_fin_l(fin_l: fish_medium::FinL) -> Mesh<FigurePipeline> {
load_mesh(
match fin_l {
fish_medium::FinL::Default => "npc.marlin.marlin_fin_l",
fish_medium::FinL::Default => "npc.marlin.fin_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_marlin_fin_r(fin_r: fish_medium::FinR) -> Mesh<FigurePipeline> {
pub fn mesh_fish_medium_fin_r(fin_r: fish_medium::FinR) -> Mesh<FigurePipeline> {
load_mesh(
match fin_r {
fish_medium::FinR::Default => "npc.marlin.marlin_fin_r",
fish_medium::FinR::Default => "npc.marlin.fin_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -820,7 +830,7 @@ pub fn mesh_marlin_fin_r(fin_r: fish_medium::FinR) -> Mesh<FigurePipeline> {
pub fn mesh_dragon_head(head: dragon::Head) -> Mesh<FigurePipeline> {
load_mesh(
match head {
dragon::Head::Default => "npc.dragon.dragon_head",
dragon::Head::Default => "npc.dragon.head",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -829,7 +839,7 @@ pub fn mesh_dragon_head(head: dragon::Head) -> Mesh<FigurePipeline> {
pub fn mesh_dragon_chest_front(chest_front: dragon::ChestFront) -> Mesh<FigurePipeline> {
load_mesh(
match chest_front {
dragon::ChestFront::Default => "npc.dragon.dragon_chest_front",
dragon::ChestFront::Default => "npc.dragon.chest_front",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -838,7 +848,7 @@ pub fn mesh_dragon_chest_front(chest_front: dragon::ChestFront) -> Mesh<FigurePi
pub fn mesh_dragon_chest_rear(chest_rear: dragon::ChestRear) -> Mesh<FigurePipeline> {
load_mesh(
match chest_rear {
dragon::ChestRear::Default => "npc.dragon.dragon_chest_rear",
dragon::ChestRear::Default => "npc.dragon.chest_rear",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -847,7 +857,7 @@ pub fn mesh_dragon_chest_rear(chest_rear: dragon::ChestRear) -> Mesh<FigurePipel
pub fn mesh_dragon_tail_front(tail_front: dragon::TailFront) -> Mesh<FigurePipeline> {
load_mesh(
match tail_front {
dragon::TailFront::Default => "npc.dragon.dragon_tail_front",
dragon::TailFront::Default => "npc.dragon.tail_front",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -856,7 +866,7 @@ pub fn mesh_dragon_tail_front(tail_front: dragon::TailFront) -> Mesh<FigurePipel
pub fn mesh_dragon_tail_rear(tail_rear: dragon::TailRear) -> Mesh<FigurePipeline> {
load_mesh(
match tail_rear {
dragon::TailRear::Default => "npc.dragon.dragon_tail_rear",
dragon::TailRear::Default => "npc.dragon.tail_rear",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -865,7 +875,7 @@ pub fn mesh_dragon_tail_rear(tail_rear: dragon::TailRear) -> Mesh<FigurePipeline
pub fn mesh_dragon_wing_in_l(wing_in_l: dragon::WingInL) -> Mesh<FigurePipeline> {
load_mesh(
match wing_in_l {
dragon::WingInL::Default => "npc.dragon.dragon_wing_in_l",
dragon::WingInL::Default => "npc.dragon.wing_in_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -874,7 +884,7 @@ pub fn mesh_dragon_wing_in_l(wing_in_l: dragon::WingInL) -> Mesh<FigurePipeline>
pub fn mesh_dragon_wing_in_r(wing_in_r: dragon::WingInR) -> Mesh<FigurePipeline> {
load_mesh(
match wing_in_r {
dragon::WingInR::Default => "npc.dragon.dragon_wing_in_r",
dragon::WingInR::Default => "npc.dragon.wing_in_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -883,7 +893,7 @@ pub fn mesh_dragon_wing_in_r(wing_in_r: dragon::WingInR) -> Mesh<FigurePipeline>
pub fn mesh_dragon_wing_out_l(wing_out_l: dragon::WingOutL) -> Mesh<FigurePipeline> {
load_mesh(
match wing_out_l {
dragon::WingOutL::Default => "npc.dragon.dragon_wing_out_l",
dragon::WingOutL::Default => "npc.dragon.wing_out_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -892,7 +902,7 @@ pub fn mesh_dragon_wing_out_l(wing_out_l: dragon::WingOutL) -> Mesh<FigurePipeli
pub fn mesh_dragon_wing_out_r(wing_out_r: dragon::WingOutR) -> Mesh<FigurePipeline> {
load_mesh(
match wing_out_r {
dragon::WingOutR::Default => "npc.dragon.dragon_wing_out_r",
dragon::WingOutR::Default => "npc.dragon.wing_out_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -901,7 +911,7 @@ pub fn mesh_dragon_wing_out_r(wing_out_r: dragon::WingOutR) -> Mesh<FigurePipeli
pub fn mesh_dragon_foot_fl(foot_fl: dragon::FootFL) -> Mesh<FigurePipeline> {
load_mesh(
match foot_fl {
dragon::FootFL::Default => "npc.dragon.dragon_foot_fl",
dragon::FootFL::Default => "npc.dragon.foot_fl",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -910,7 +920,7 @@ pub fn mesh_dragon_foot_fl(foot_fl: dragon::FootFL) -> Mesh<FigurePipeline> {
pub fn mesh_dragon_foot_fr(foot_fr: dragon::FootFR) -> Mesh<FigurePipeline> {
load_mesh(
match foot_fr {
dragon::FootFR::Default => "npc.dragon.dragon_foot_fr",
dragon::FootFR::Default => "npc.dragon.foot_fr",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -919,7 +929,7 @@ pub fn mesh_dragon_foot_fr(foot_fr: dragon::FootFR) -> Mesh<FigurePipeline> {
pub fn mesh_dragon_foot_bl(foot_bl: dragon::FootBL) -> Mesh<FigurePipeline> {
load_mesh(
match foot_bl {
dragon::FootBL::Default => "npc.dragon.dragon_foot_bl",
dragon::FootBL::Default => "npc.dragon.foot_bl",
},
Vec3::new(-7.0, -6.0, -6.0),
)
@ -928,167 +938,166 @@ pub fn mesh_dragon_foot_bl(foot_bl: dragon::FootBL) -> Mesh<FigurePipeline> {
pub fn mesh_dragon_foot_br(foot_br: dragon::FootBR) -> Mesh<FigurePipeline> {
load_mesh(
match foot_br {
dragon::FootBR::Default => "npc.dragon.dragon_foot_br",
dragon::FootBR::Default => "npc.dragon.foot_br",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
////
pub fn mesh_crow_head(head: bird_small::Head) -> Mesh<FigurePipeline> {
pub fn mesh_bird_small_head(head: bird_small::Head) -> Mesh<FigurePipeline> {
load_mesh(
match head {
bird_small::Head::Default => "npc.crow.crow_head",
bird_small::Head::Default => "npc.crow.head",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_crow_torso(torso: bird_small::Torso) -> Mesh<FigurePipeline> {
pub fn mesh_bird_small_torso(torso: bird_small::Torso) -> Mesh<FigurePipeline> {
load_mesh(
match torso {
bird_small::Torso::Default => "npc.crow.crow_torso",
bird_small::Torso::Default => "npc.crow.torso",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_crow_wing_l(wing_l: bird_small::WingL) -> Mesh<FigurePipeline> {
pub fn mesh_bird_small_wing_l(wing_l: bird_small::WingL) -> Mesh<FigurePipeline> {
load_mesh(
match wing_l {
bird_small::WingL::Default => "npc.crow.crow_wing_l",
bird_small::WingL::Default => "npc.crow.wing_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_crow_wing_r(wing_r: bird_small::WingR) -> Mesh<FigurePipeline> {
pub fn mesh_bird_small_wing_r(wing_r: bird_small::WingR) -> Mesh<FigurePipeline> {
load_mesh(
match wing_r {
bird_small::WingR::Default => "npc.crow.crow_wing_r",
bird_small::WingR::Default => "npc.crow.wing_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
////
pub fn mesh_cardinalfish_torso(torso: fish_small::Torso) -> Mesh<FigurePipeline> {
pub fn mesh_fish_small_torso(torso: fish_small::Torso) -> Mesh<FigurePipeline> {
load_mesh(
match torso {
fish_small::Torso::Default => "npc.cardinalfish.cardinalfish_torso",
fish_small::Torso::Default => "npc.cardinalfish.torso",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_cardinalfish_tail(tail: fish_small::Tail) -> Mesh<FigurePipeline> {
pub fn mesh_fish_small_tail(tail: fish_small::Tail) -> Mesh<FigurePipeline> {
load_mesh(
match tail {
fish_small::Tail::Default => "npc.cardinalfish.cardinalfish_tail",
fish_small::Tail::Default => "npc.cardinalfish.tail",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
////
pub fn mesh_knight_head(head: biped_large::Head) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_head(head: biped_large::Head) -> Mesh<FigurePipeline> {
load_mesh(
match head {
biped_large::Head::Default => "npc.knight.knight_",
biped_large::Head::Default => "npc.knight.head",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_upper_torso(upper_torso: biped_large::UpperTorso) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_upper_torso(upper_torso: biped_large::UpperTorso) -> Mesh<FigurePipeline> {
load_mesh(
match upper_torso {
biped_large::UpperTorso::Default => "npc.knight.knight_upper_torso",
biped_large::UpperTorso::Default => "npc.knight.upper_torso",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_lower_torso(lower_torso: biped_large::LowerTorso) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_lower_torso(lower_torso: biped_large::LowerTorso) -> Mesh<FigurePipeline> {
load_mesh(
match lower_torso {
biped_large::LowerTorso::Default => "npc.knight.knight_lower_torso",
biped_large::LowerTorso::Default => "npc.knight.lower_torso",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_shoulder_l(shoulder_l: biped_large::ShoulderL) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_shoulder_l(shoulder_l: biped_large::ShoulderL) -> Mesh<FigurePipeline> {
load_mesh(
match shoulder_l {
biped_large::ShoulderL::Default => "npc.knight.knight_shoulder_l",
biped_large::ShoulderL::Default => "npc.knight.shoulder_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_shoulder_r(shoulder_r: biped_large::ShoulderR) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_shoulder_r(shoulder_r: biped_large::ShoulderR) -> Mesh<FigurePipeline> {
load_mesh(
match shoulder_r {
biped_large::ShoulderR::Default => "npc.knight.knight_shoulder_r",
biped_large::ShoulderR::Default => "npc.knight.shoulder_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_hand_l(hand_l: biped_large::HandL) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_hand_l(hand_l: biped_large::HandL) -> Mesh<FigurePipeline> {
load_mesh(
match hand_l {
biped_large::HandL::Default => "npc.knight.knight_hand_l",
biped_large::HandL::Default => "npc.knight.hand_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_hand_r(hand_r: biped_large::HandR) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_hand_r(hand_r: biped_large::HandR) -> Mesh<FigurePipeline> {
load_mesh(
match hand_r {
biped_large::HandR::Default => "npc.knight.knight_hand_r",
biped_large::HandR::Default => "npc.knight.hand_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_leg_l(leg_l: biped_large::LegL) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_leg_l(leg_l: biped_large::LegL) -> Mesh<FigurePipeline> {
load_mesh(
match leg_l {
biped_large::LegL::Default => "npc.knight.knight_leg_l",
biped_large::LegL::Default => "npc.knight.leg_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_leg_r(leg_r: biped_large::LegR) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_leg_r(leg_r: biped_large::LegR) -> Mesh<FigurePipeline> {
load_mesh(
match leg_r {
biped_large::LegR::Default => "npc.knight.knight_leg_r",
biped_large::LegR::Default => "npc.knight.leg_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_foot_l(foot_l: biped_large::FootL) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_foot_l(foot_l: biped_large::FootL) -> Mesh<FigurePipeline> {
load_mesh(
match foot_l {
biped_large::FootL::Default => "npc.knight.knight_foot_l",
biped_large::FootL::Default => "npc.knight.foot_l",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
pub fn mesh_knight_foot_r(foot_r: biped_large::FootR) -> Mesh<FigurePipeline> {
pub fn mesh_biped_large_foot_r(foot_r: biped_large::FootR) -> Mesh<FigurePipeline> {
load_mesh(
match foot_r {
biped_large::FootR::Default => "npc.knight.knight_foot_r",
biped_large::FootR::Default => "npc.knight.foot_r",
},
Vec3::new(-7.0, -6.0, -6.0),
)
}
////
pub fn mesh_object(obj: object::Body) -> Mesh<FigurePipeline> {
use object::Body;

Some files were not shown because too many files have changed in this diff Show More