Struct voxelize::BlockBuilder
source · pub struct BlockBuilder { /* private fields */ }
Implementations§
source§impl BlockBuilder
impl BlockBuilder
sourcepub fn id(self, id: u32) -> Self
pub fn id(self, id: u32) -> Self
Configure the ID of the block. Default would be the next available ID.
sourcepub fn rotatable(self, rotatable: bool) -> Self
pub fn rotatable(self, rotatable: bool) -> Self
Configure whether or not this block is rotatable. Default is false.
sourcepub fn y_rotatable(self, y_rotatable: bool) -> Self
pub fn y_rotatable(self, y_rotatable: bool) -> Self
Configure whether or not this block is rotatable on the y-axis. Default is false.
pub fn y_rotatable_segments( self, y_rotatable_segments: &YRotatableSegments ) -> Self
sourcepub fn is_empty(self, is_empty: bool) -> Self
pub fn is_empty(self, is_empty: bool) -> Self
Configure whether or not this is empty. Default is false.
sourcepub fn is_fluid(self, is_fluid: bool) -> Self
pub fn is_fluid(self, is_fluid: bool) -> Self
Configure whether or not this is a fluid. Default is false.
sourcepub fn is_passable(self, is_plant: bool) -> Self
pub fn is_passable(self, is_plant: bool) -> Self
Configure whether or not this block can be passed through. Default is false.
sourcepub fn red_light_level(self, red_light_level: u32) -> Self
pub fn red_light_level(self, red_light_level: u32) -> Self
Configure the red light level of this block. Default is 0.
sourcepub fn green_light_level(self, green_light_level: u32) -> Self
pub fn green_light_level(self, green_light_level: u32) -> Self
Configure the green light level of this block. Default is 0.
sourcepub fn blue_light_level(self, blue_light_level: u32) -> Self
pub fn blue_light_level(self, blue_light_level: u32) -> Self
Configure the blue light level of this block. Default is 0.
sourcepub fn torch_light_level(self, light_level: u32) -> Self
pub fn torch_light_level(self, light_level: u32) -> Self
Configure the torch level (RGB) of this block. Default is 0.
sourcepub fn transparent_standalone(self, transparent_standalone: bool) -> Self
pub fn transparent_standalone(self, transparent_standalone: bool) -> Self
Configure whether or not should transparent faces be rendered individually. Default is false.
sourcepub fn faces(self, faces: &[BlockFace]) -> Self
pub fn faces(self, faces: &[BlockFace]) -> Self
Configure the faces that the block has. Default is vec![]
.
sourcepub fn aabbs(self, aabbs: &[AABB]) -> Self
pub fn aabbs(self, aabbs: &[AABB]) -> Self
Configure the bounding boxes that the block has. Default is vec![]
.
sourcepub fn is_see_through(self, is_see_through: bool) -> Self
pub fn is_see_through(self, is_see_through: bool) -> Self
Is this block a see-through block? Should it be sorted to the transparent meshes?
sourcepub fn is_transparent(self, is_transparent: bool) -> Self
pub fn is_transparent(self, is_transparent: bool) -> Self
Configure whether or not this block is transparent on all x,y,z axis.
sourcepub fn is_x_transparent(self, is_x_transparent: bool) -> Self
pub fn is_x_transparent(self, is_x_transparent: bool) -> Self
Configure whether or not this block is transparent on the x-axis. Default is false.
sourcepub fn is_y_transparent(self, is_y_transparent: bool) -> Self
pub fn is_y_transparent(self, is_y_transparent: bool) -> Self
Configure whether or not this block is transparent on the y-axis. Default is false.
sourcepub fn is_z_transparent(self, is_z_transparent: bool) -> Self
pub fn is_z_transparent(self, is_z_transparent: bool) -> Self
Configure whether or not this block is transparent on the z-axis. Default is false.
sourcepub fn is_px_transparent(self, is_px_transparent: bool) -> Self
pub fn is_px_transparent(self, is_px_transparent: bool) -> Self
Configure whether or not this block is transparent looking from the positive x-axis. Default is false.
sourcepub fn is_py_transparent(self, is_py_transparent: bool) -> Self
pub fn is_py_transparent(self, is_py_transparent: bool) -> Self
Configure whether or not this block is transparent looking from the positive y-axis. Default is false.
sourcepub fn is_pz_transparent(self, is_pz_transparent: bool) -> Self
pub fn is_pz_transparent(self, is_pz_transparent: bool) -> Self
Configure whether or not this block is transparent looking from the positive z-axis. Default is false.
sourcepub fn is_nx_transparent(self, is_nx_transparent: bool) -> Self
pub fn is_nx_transparent(self, is_nx_transparent: bool) -> Self
Configure whether or not this block is transparent looking from the negative x-axis. Default is false.
sourcepub fn is_ny_transparent(self, is_ny_transparent: bool) -> Self
pub fn is_ny_transparent(self, is_ny_transparent: bool) -> Self
Configure whether or not this block is transparent looking from the negative y-axis. Default is false.
sourcepub fn is_nz_transparent(self, is_nz_transparent: bool) -> Self
pub fn is_nz_transparent(self, is_nz_transparent: bool) -> Self
Configure whether or not this block is transparent looking from the negative z-axis. Default is false.
sourcepub fn light_reduce(self, light_reduce: bool) -> Self
pub fn light_reduce(self, light_reduce: bool) -> Self
Configure whether light reduces through this block. Default is false.
pub fn dynamic_patterns(self, patterns: &[BlockDynamicPattern]) -> Self
sourcepub fn dynamic_fn<F: Fn(Vec3<i32>, &dyn VoxelAccess, &Registry) -> (Vec<BlockFace>, Vec<AABB>, [bool; 6]) + 'static + Send + Sync>(
self,
dynamic_fn: F
) -> Self
pub fn dynamic_fn<F: Fn(Vec3<i32>, &dyn VoxelAccess, &Registry) -> (Vec<BlockFace>, Vec<AABB>, [bool; 6]) + 'static + Send + Sync>( self, dynamic_fn: F ) -> Self
Configure the function that is used to create dynamic AABBs and faces for this block.
pub fn active_fn<F1: Fn(Vec3<i32>, &dyn VoxelAccess, &Registry) -> u64 + 'static + Send + Sync, F2: Fn(Vec3<i32>, &dyn VoxelAccess, &Registry) -> Vec<VoxelUpdate> + 'static + Send + Sync>( self, active_ticker: F1, active_updater: F2 ) -> Self
pub fn is_entity(self, is_entity: bool) -> Self
Trait Implementations§
source§impl Default for BlockBuilder
impl Default for BlockBuilder
source§fn default() -> BlockBuilder
fn default() -> BlockBuilder
Auto Trait Implementations§
impl Freeze for BlockBuilder
impl !RefUnwindSafe for BlockBuilder
impl Send for BlockBuilder
impl Sync for BlockBuilder
impl Unpin for BlockBuilder
impl !UnwindSafe for BlockBuilder
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
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>
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>
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)
&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)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.source§impl<T> TryDefault for Twhere
T: Default,
impl<T> TryDefault for Twhere
T: Default,
source§fn try_default() -> Result<T, String>
fn try_default() -> Result<T, String>
source§fn unwrap_default() -> Self
fn unwrap_default() -> Self
try_default
and panics on an error case.