Crate ferravex_core

Source
Expand description

Small, platform-independent building blocks. Simulation time never comes from a wall clock.

use ferravex_core::{FixedClock, World};
let mut world = World::new();
world.spawn((42_u32,));
let mut clock = FixedClock::new(64.0, 8);
let frame = clock.advance(1.0 / 60.0);
for _ in 0..frame.steps { /* update systems with frame.dt */ }

Re-exports§

pub use ferravex_ecs as ecs;

Modules§

collision
Small allocation-free 2D collision queries for game logic, independent of rendering.
telemetry
Opt-in local performance recordings. Durations are CPU wall time, never inferred GPU time.

Structs§

Entity
Opaque slot identity. A despawned entity never becomes valid again in its world. Handles are world-local; two separate worlds may issue the same identity.
FixedClock
Frame-rate independent simulation with bounded catch-up work.
FrameStats
Allocation-free rolling frame-time statistics. Zero samples are valid.
FrameStep
A fixed simulation step budget with a fractional render interpolation factor.
World
Sparse typed storage with generational entities and checked component borrows.