pub struct GpuMarchingCubes {
pub resolution: u32,
pub field_eval_shader: Option<u32>,
pub classify_shader: Option<u32>,
pub vertex_gen_shader: Option<u32>,
pub field_texture: Option<u32>,
pub vertex_ssbo: Option<u32>,
pub index_ssbo: Option<u32>,
pub indirect_buffer: Option<u32>,
pub max_vertices: u32,
pub last_vertex_count: u32,
pub last_triangle_count: u32,
}Expand description
GPU marching cubes pipeline state.
Fields§
§resolution: u32Grid resolution (e.g. 32 or 64).
field_eval_shader: Option<u32>Field evaluation shader program (compute).
classify_shader: Option<u32>Cell classification + prefix sum shader.
vertex_gen_shader: Option<u32>Vertex generation shader.
field_texture: Option<u32>3D texture for field values.
vertex_ssbo: Option<u32>SSBO for generated vertices.
index_ssbo: Option<u32>SSBO for generated indices.
indirect_buffer: Option<u32>Indirect draw buffer.
max_vertices: u32Maximum vertices the SSBO can hold.
last_vertex_count: u32Last frame’s vertex count (for stats).
last_triangle_count: u32Last frame’s triangle count.
Implementations§
Auto Trait Implementations§
impl Freeze for GpuMarchingCubes
impl RefUnwindSafe for GpuMarchingCubes
impl Send for GpuMarchingCubes
impl Sync for GpuMarchingCubes
impl Unpin for GpuMarchingCubes
impl UnsafeUnpin for GpuMarchingCubes
impl UnwindSafe for GpuMarchingCubes
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.