use galactica_content::{Content, SystemHandle}; use galactica_playeragent::PlayerAgent; use galactica_system::phys::{ParticleBuilder, PhysSim}; use galactica_util::timing::Timing; use nalgebra::Vector2; /// Bundles parameters passed to a single call to GPUState::render pub struct RenderInput<'a> { /// Camera position, in world units pub camera_pos: Vector2, /// Player ship data pub player: &'a PlayerAgent, /// The system we're currently in pub current_system: SystemHandle, /// Height of screen, in world units pub camera_zoom: f32, /// The world state to render pub systemsim: &'a PhysSim, // TODO: handle overflow. is it a problem? /// The current time, in seconds pub current_time: f32, /// Game content pub ct: &'a Content, /// Particles to spawn during this frame pub particles: &'a Vec, /// Time we spent in each part of the game loop pub timing: Timing, }