pub struct HlodCluster {Show 14 fields
pub cluster_id: u32,
pub actor_ids: Vec<u32>,
pub merged_bounds: ChunkBounds,
pub center: Vec3,
pub radius: f32,
pub lod_level: LodLevel,
pub simplified_vertex_count: u32,
pub simplified_triangle_count: u32,
pub memory_bytes: u64,
pub is_built: bool,
pub sub_clusters: Vec<u32>,
pub parent_cluster_id: Option<u32>,
pub depth: u32,
pub importance: f32,
}Fields§
§cluster_id: u32§actor_ids: Vec<u32>§merged_bounds: ChunkBounds§center: Vec3§radius: f32§lod_level: LodLevel§simplified_vertex_count: u32§simplified_triangle_count: u32§memory_bytes: u64§is_built: bool§sub_clusters: Vec<u32>§parent_cluster_id: Option<u32>§depth: u32§importance: f32Implementations§
Source§impl HlodCluster
impl HlodCluster
pub fn new(cluster_id: u32, depth: u32) -> Self
pub fn add_actor(&mut self, actor_id: u32, bounds: &ChunkBounds)
pub fn compute_simplified_geometry(&mut self)
pub fn compute_screen_size( &self, camera_pos: Vec3, screen_height: f32, fov_rad: f32, ) -> f32
pub fn should_use_hlod( &self, camera_pos: Vec3, screen_height: f32, fov_rad: f32, threshold: f32, ) -> bool
pub fn overlap_with(&self, other: &HlodCluster) -> bool
pub fn merge_cluster(&mut self, other: &HlodCluster)
Trait Implementations§
Source§impl Clone for HlodCluster
impl Clone for HlodCluster
Auto Trait Implementations§
impl Freeze for HlodCluster
impl RefUnwindSafe for HlodCluster
impl Send for HlodCluster
impl Sync for HlodCluster
impl Unpin for HlodCluster
impl UnsafeUnpin for HlodCluster
impl UnwindSafe for HlodCluster
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.