diff options
| author | Kai Stevenson <kai@kaistevenson.com> | 2026-08-15 22:46:53 -0700 |
|---|---|---|
| committer | Kai Stevenson <kai@kaistevenson.com> | 2026-08-15 22:46:53 -0700 |
| commit | d7eccba2055cd7784a0db6d9ee8692a4f3510931 (patch) | |
| tree | 37f4c19781c788fa2af1ee4eeb7195f49a6d2d7a /src/sim/materials/mod.rs | |
| parent | 05135beb87bbf0edace544b80ba40e327d9a89ac (diff) | |
fire, optimize viewport rendering
Diffstat (limited to 'src/sim/materials/mod.rs')
| -rw-r--r-- | src/sim/materials/mod.rs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/sim/materials/mod.rs b/src/sim/materials/mod.rs index d2d0e0e..764318a 100644 --- a/src/sim/materials/mod.rs +++ b/src/sim/materials/mod.rs @@ -1,5 +1,6 @@ use crate::sim::sim::UpdateCtx; +mod fire; mod gas; mod sand; mod water; @@ -12,6 +13,7 @@ pub enum MaterialId { Wood, Water, Gas, + Fire, } pub struct MaterialDef { @@ -21,7 +23,7 @@ pub struct MaterialDef { pub sim_update: Option<fn(ctx: &mut UpdateCtx) -> ()>, } -static MATERIALS: [MaterialDef; 5] = [ +static MATERIALS: [MaterialDef; 6] = [ MaterialDef { name: "Void", color: (0x00, 0x00, 0x00, 0x00), @@ -52,15 +54,23 @@ static MATERIALS: [MaterialDef; 5] = [ density: 10, sim_update: Some(gas::sim_update), }, + MaterialDef { + name: "Fire", + color: (0xFC, 0x66, 0x00, 0xAA), + // for now this matches wood + density: 50, + sim_update: Some(fire::sim_update), + }, ]; impl MaterialId { - pub const ALL: [MaterialId; 5] = [ + pub const ALL: [MaterialId; 6] = [ MaterialId::Void, MaterialId::Sand, MaterialId::Wood, MaterialId::Water, MaterialId::Gas, + MaterialId::Fire, ]; #[inline] pub fn def(self) -> &'static MaterialDef { |
