use std::rc::Rc; use galactica_content::{Content, SystemHandle}; use galactica_playeragent::PlayerAgent; use galactica_system::phys::PhysImage; 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 phys_img: &'a PhysImage, // TODO: handle overflow. is it a problem? /// The current time, in seconds pub current_time: f32, /// The amount of time that has passed since the last frame was drawn pub time_since_last_run: f32, /// Game content pub ct: Rc, /// Time we spent in each part of the game loop pub timing: Timing, }