pub struct LevelStreamingEditor {Show 25 fields
pub levels: HashMap<u64, StreamingLevel>,
pub next_level_id: u64,
pub world_grid: WorldPartitionGrid,
pub load_queue: StreamingLoadQueue,
pub memory_manager: MemoryPressureManager,
pub volumes: HashMap<u64, StreamingVolume>,
pub next_volume_id: u64,
pub prefetcher: PrefetchPredictor,
pub dependency_graph: DependencyGraph,
pub sector_graph: SectorGraph,
pub persistent_manager: PersistentLevelManager,
pub debug_visualizer: StreamingDebugVisualizer,
pub timeline: StreamingTimeline,
pub budget_tool: StreamingBudgetTool,
pub map_overview: MapOverview,
pub hzb: HierarchicalZBuffer,
pub lod_budget: CombinedBudgetManager,
pub simulator: StreamingSimulator,
pub camera_position: Vec3,
pub camera_direction: Vec3,
pub camera_view_proj: Mat4,
pub config: LevelStreamingEditorConfig,
pub current_frame: u64,
pub current_time_ms: f64,
pub stats: StreamingStats,
}Fields§
§levels: HashMap<u64, StreamingLevel>§next_level_id: u64§world_grid: WorldPartitionGrid§load_queue: StreamingLoadQueue§memory_manager: MemoryPressureManager§volumes: HashMap<u64, StreamingVolume>§next_volume_id: u64§prefetcher: PrefetchPredictor§dependency_graph: DependencyGraph§sector_graph: SectorGraph§persistent_manager: PersistentLevelManager§debug_visualizer: StreamingDebugVisualizer§timeline: StreamingTimeline§budget_tool: StreamingBudgetTool§map_overview: MapOverview§hzb: HierarchicalZBuffer§lod_budget: CombinedBudgetManager§simulator: StreamingSimulator§camera_position: Vec3§camera_direction: Vec3§camera_view_proj: Mat4§config: LevelStreamingEditorConfig§current_frame: u64§current_time_ms: f64§stats: StreamingStatsImplementations§
Source§impl LevelStreamingEditor
impl LevelStreamingEditor
pub fn new(config: LevelStreamingEditorConfig) -> Self
pub fn add_level( &mut self, name: String, asset: StreamingLevelAsset, bounds: Aabb, ) -> u64
pub fn remove_level(&mut self, id: u64)
pub fn add_streaming_volume_sphere( &mut self, name: String, center: Vec3, load_r: f32, unload_r: f32, ) -> u64
pub fn add_streaming_volume_box( &mut self, name: String, transform: Mat4, half_extents: Vec3, ) -> u64
pub fn update_camera( &mut self, position: Vec3, direction: Vec3, view_proj: Mat4, )
pub fn set_debug_overlay(&mut self, overlay: DebugOverlay)
pub fn get_level(&self, id: u64) -> Option<&StreamingLevel>
pub fn get_level_mut(&mut self, id: u64) -> Option<&mut StreamingLevel>
pub fn force_load_level(&mut self, id: u64)
pub fn force_unload_level(&mut self, id: u64)
pub fn set_memory_budget(&mut self, budget_mb: f32)
pub fn add_level_dependency( &mut self, from: u64, to: u64, edge: DependencyEdgeType, )
pub fn check_for_circular_dependencies(&self) -> Option<Vec<u64>>
pub fn get_load_plan(&self) -> Vec<Vec<u64>>
pub fn start_simulation(&mut self)
pub fn stop_simulation(&mut self)
pub fn reset_simulation(&mut self)
pub fn get_world_bounds(&self) -> Aabb
pub fn cells_in_camera_radius(&self, radius: f32) -> Vec<CellCoord>
pub fn query_levels_near(&self, pos: Vec3, radius: f32) -> Vec<u64>
pub fn get_streaming_report(&self) -> StreamingReport
Trait Implementations§
Auto Trait Implementations§
impl Freeze for LevelStreamingEditor
impl RefUnwindSafe for LevelStreamingEditor
impl Send for LevelStreamingEditor
impl Sync for LevelStreamingEditor
impl Unpin for LevelStreamingEditor
impl UnsafeUnpin for LevelStreamingEditor
impl UnwindSafe for LevelStreamingEditor
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> 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.