Struct voxelize::WorldConfig
source · [−]pub struct WorldConfig {Show 24 fields
pub max_clients: usize,
pub chunk_size: usize,
pub sub_chunks: usize,
pub min_chunk: [i32; 2],
pub max_chunk: [i32; 2],
pub max_height: usize,
pub max_light_level: u32,
pub max_chunks_per_tick: usize,
pub max_updates_per_tick: usize,
pub max_response_per_tick: usize,
pub max_saves_per_tick: usize,
pub preload_radius: u32,
pub water_level: usize,
pub gravity: [f32; 3],
pub min_bounce_impulse: f32,
pub air_drag: f32,
pub fluid_drag: f32,
pub fluid_density: f32,
pub collision_repulsion: f32,
pub seed: u32,
pub terrain: NoiseParams,
pub saving: bool,
pub save_dir: String,
pub save_interval: usize,
}
Expand description
World configuration, storing information of how a world is constructed.
Fields
max_clients: usize
Max clients for each world. Default is 100 clients.
chunk_size: usize
The horizontal dimension of the chunks in this world. Default is 16 blocks wide.
sub_chunks: usize
The number of sub chunks a chunk is divided into to mesh more efficiently. Defaults to 4.
min_chunk: [i32; 2]
The minimum inclusive chunk on this world. Default is [i32::MIN, i32::MIN].
max_chunk: [i32; 2]
The maximum inclusive chunk on this world. Default is [i32::MAX, i32::MAX].
max_height: usize
Max height of the world. Default is 256 blocks high.
max_light_level: u32
Max light level that light can propagate. Default is 15 blocks.
max_chunks_per_tick: usize
Maximum chunks to be processed per tick. Default is 24 chunks.
max_updates_per_tick: usize
Maximum voxel updates to be processed per tick. Default is 500 voxels.
max_response_per_tick: usize
Maximum responses to send to client per tick to prevent bottle-necking. Default is 4 chunks.
max_saves_per_tick: usize
Maximum chunks saved per tick.
preload_radius: u32
Radius of chunks around 0,0
to be preloaded. Default is 8 chunks.
water_level: usize
Water level of the voxelize world.
gravity: [f32; 3]
Gravity of the voxelize world.
min_bounce_impulse: f32
Minimum impulse to start bouncing.
air_drag: f32
Drag of the air in the voxelize world.
fluid_drag: f32
Drag of the fluid in the voxelize world.
fluid_density: f32
Fluid density of the voxelize world. TODO: move this to registry.
collision_repulsion: f32
The repulsion factor when a collision is detected between entities.
seed: u32
Seed of the world. Default is “Voxelize”.
terrain: NoiseParams
Terrain parameters
saving: bool
Whether this world is saved.
save_dir: String
Path to save all the saved chunks. Needs save
to be true to be used.
save_interval: usize
Saving interval.
Implementations
sourceimpl WorldConfig
impl WorldConfig
sourcepub fn new() -> WorldConfigBuilder
pub fn new() -> WorldConfigBuilder
Create a new world config using the Builder pattern.
Example
let config = WorldConfig::new().chunk_size(8).max_height(64).build();
server.create_world("small-world", &config);
sourcepub fn get_init_config(&self) -> InitConfig
pub fn get_init_config(&self) -> InitConfig
Get the INIT configurations
Trait Implementations
sourceimpl Clone for WorldConfig
impl Clone for WorldConfig
sourcefn clone(&self) -> WorldConfig
fn clone(&self) -> WorldConfig
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Default for WorldConfig
impl Default for WorldConfig
sourcefn default() -> WorldConfig
fn default() -> WorldConfig
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for WorldConfig
impl Send for WorldConfig
impl Sync for WorldConfig
impl Unpin for WorldConfig
impl UnwindSafe for WorldConfig
Blanket Implementations
impl<T> Any for T where
T: Any,
impl<T> Any for T where
T: Any,
fn get_type_id(&self) -> TypeId
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
. Read more
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
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. Read more
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. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
sourceimpl<T> TryDefault for T where
T: Default,
impl<T> TryDefault for T where
T: Default,
sourcefn try_default() -> Result<T, String>
fn try_default() -> Result<T, String>
Tries to create the default.
sourcefn unwrap_default() -> Self
fn unwrap_default() -> Self
Calls try_default
and panics on an error case.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more