pub struct IntegratedStreamingWorld {Show 16 fields
pub scene_graph: SceneGraph,
pub terrain: TerrainManager,
pub tile_map: StreamingTileMap,
pub instancer: LevelInstancer,
pub fog_zones: Vec<FogZone>,
pub deadline_scheduler: DeadlineScheduler,
pub spatial_hash: SpatialHash3D,
pub metrics: StreamingMetricsDashboard,
pub camera_pos: Vec3,
pub camera_dir: Vec3,
pub camera_velocity: Vec3,
pub current_time: f64,
pub delta_time: f32,
pub stream_radius_main: f32,
pub stream_radius_secondary: f32,
pub frame_count: u64,
}Fields§
§scene_graph: SceneGraph§terrain: TerrainManager§tile_map: StreamingTileMap§instancer: LevelInstancer§fog_zones: Vec<FogZone>§deadline_scheduler: DeadlineScheduler§spatial_hash: SpatialHash3D§metrics: StreamingMetricsDashboard§camera_pos: Vec3§camera_dir: Vec3§camera_velocity: Vec3§current_time: f64§delta_time: f32§stream_radius_main: f32§stream_radius_secondary: f32§frame_count: u64Implementations§
Source§impl IntegratedStreamingWorld
impl IntegratedStreamingWorld
pub fn new() -> Self
pub fn update(&mut self, camera_pos: Vec3, camera_dir: Vec3, delta_time: f32)
pub fn add_fog_zone(&mut self, bounds: Aabb) -> u32
pub fn fog_density_at(&self, pos: Vec3) -> f32
pub fn schedule_level_load( &mut self, level_id: u64, priority: f32, size_bytes: u64, ) -> u64
pub fn place_level_instance(&mut self, level_id: u64, position: Vec3) -> u64
pub fn instances_near(&self, center: Vec3, radius: f32) -> Vec<u64>
pub fn terrain_height_at(&self, x: f32, z: f32) -> f32
pub fn predicted_camera_position(&self, look_ahead_seconds: f32) -> Vec3
pub fn tiles_to_preload(&self, look_ahead_seconds: f32) -> Vec<(i32, i32)>
pub fn memory_mb(&self) -> f32
pub fn is_critical(&self) -> bool
pub fn frame_count(&self) -> u64
pub fn avg_fps(&self) -> f32
Trait Implementations§
Source§impl Clone for IntegratedStreamingWorld
impl Clone for IntegratedStreamingWorld
Auto Trait Implementations§
impl Freeze for IntegratedStreamingWorld
impl RefUnwindSafe for IntegratedStreamingWorld
impl Send for IntegratedStreamingWorld
impl Sync for IntegratedStreamingWorld
impl Unpin for IntegratedStreamingWorld
impl UnsafeUnpin for IntegratedStreamingWorld
impl UnwindSafe for IntegratedStreamingWorld
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.