From a779011b9048cdda04887c77e20ee8936f332a7a Mon Sep 17 00:00:00 2001 From: Kai Stevenson Date: Tue, 25 Aug 2026 00:32:16 -0700 Subject: vfx pipeline --- src/content/vfx/mod.rs | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/content/vfx/mod.rs (limited to 'src/content/vfx/mod.rs') diff --git a/src/content/vfx/mod.rs b/src/content/vfx/mod.rs new file mode 100644 index 0000000..8843bf1 --- /dev/null +++ b/src/content/vfx/mod.rs @@ -0,0 +1,29 @@ +#[repr(u8)] +#[derive(Clone, Copy, PartialEq, Eq, Debug)] +pub enum VfxMaterialId { + Tracer = 0, +} + +pub struct VfxMaterialDef { + pub name: &'static str, + pub color: (u8, u8, u8, u8), + pub length: f32, +} + +static MATERIALS: [VfxMaterialDef; 1] = [VfxMaterialDef { + name: "Tracer", + color: (0xFF, 0xAA, 0xAA, 0xFF), + length: 15.0, +}]; + +impl VfxMaterialId { + pub const ALL: [VfxMaterialId; 1] = [VfxMaterialId::Tracer]; + #[inline] + pub fn def(self) -> &'static VfxMaterialDef { + &MATERIALS[self as usize] + } + + pub fn from_index(idx: u8) -> VfxMaterialId { + VfxMaterialId::ALL[idx as usize] + } +} -- cgit v1.3.1