Struct mallumo::ShapeList
[−]
[src]
pub struct ShapeList { pub shapes: Vec<Shape>, pub indices: Vec<u32>, pub vertices: Vec<Vertex>, pub primitive_parameters: Vec<PrimitiveParameters>, pub textures: Vec<Texture2D>, pub ibl_diffuse_texture: Option<TextureCubemap>, pub ibl_specular_texture: Option<TextureCubemap>, pub indices_buffer: MutableBuffer, pub vertices_buffer: MutableBuffer, pub primitive_parameters_buffer: MutableBuffer, // some fields omitted }
Describes multiple shapes. This structure contains data sufficient for drawing.
Fields
shapes: Vec<Shape>
indices: Vec<u32>
vertices: Vec<Vertex>
primitive_parameters: Vec<PrimitiveParameters>
textures: Vec<Texture2D>
ibl_diffuse_texture: Option<TextureCubemap>
ibl_specular_texture: Option<TextureCubemap>
indices_buffer: MutableBuffer
vertices_buffer: MutableBuffer
primitive_parameters_buffer: MutableBuffer
Methods
impl ShapeList
[src]
fn from_shape(
indices: &[u32],
vertices: &[Vertex],
primitive_parameters: PrimitiveParameters,
albedo: Option<Texture2D>,
metallic_roughness: Option<Texture2D>,
occlusion: Option<Texture2D>,
normal: Option<Texture2D>,
emissive: Option<Texture2D>,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
[src]
indices: &[u32],
vertices: &[Vertex],
primitive_parameters: PrimitiveParameters,
albedo: Option<Texture2D>,
metallic_roughness: Option<Texture2D>,
occlusion: Option<Texture2D>,
normal: Option<Texture2D>,
emissive: Option<Texture2D>,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
Create Shape List from single shape.
fn from_shapes(
shapes: Vec<(&[u32], &[Vertex], PrimitiveParameters, Option<Texture2D>, Option<Texture2D>, Option<Texture2D>, Option<Texture2D>, Option<Texture2D>)>,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
[src]
shapes: Vec<(&[u32], &[Vertex], PrimitiveParameters, Option<Texture2D>, Option<Texture2D>, Option<Texture2D>, Option<Texture2D>, Option<Texture2D>)>,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
Create Shape List from multiple shapes.
fn from_joined_shapes(
indices: &[u32],
vertices: &[Vertex],
primitive_parameters: &[PrimitiveParameters],
textures: Vec<Texture2D>,
shapes: Vec<Shape>,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
[src]
indices: &[u32],
vertices: &[Vertex],
primitive_parameters: &[PrimitiveParameters],
textures: Vec<Texture2D>,
shapes: Vec<Shape>,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
Creates Shape List from joined shapes: indices and vertices are in single array.
fn from_file<T: AsRef<Path>>(
filepath: &T,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
[src]
filepath: &T,
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
Creates Shape List from file.
Currently only .obj and .gltf files are supported.
fn from_files<T: AsRef<Path>>(
filepaths: &[T],
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
[src]
filepaths: &[T],
unitization: Option<Unitization>
) -> Result<ShapeList, Error>
Create Shape List from multiple files.
Currently only .obj and .gltf files are supported.
fn update_buffers(&mut self) -> Result<(), Error>
[src]
Updates Shape List's buffer, necessary to use after any changes(if changes are supposed to be seen on GPU side).
fn add_shape(
&mut self,
indices: &[u32],
vertices: &[Vertex],
primitive_parameters: PrimitiveParameters,
albedo: Option<Texture2D>,
metallic_roughness: Option<Texture2D>,
occlusion: Option<Texture2D>,
normal: Option<Texture2D>,
emissive: Option<Texture2D>,
unitization: Option<Unitization>
) -> Result<(), Error>
[src]
&mut self,
indices: &[u32],
vertices: &[Vertex],
primitive_parameters: PrimitiveParameters,
albedo: Option<Texture2D>,
metallic_roughness: Option<Texture2D>,
occlusion: Option<Texture2D>,
normal: Option<Texture2D>,
emissive: Option<Texture2D>,
unitization: Option<Unitization>
) -> Result<(), Error>
Adds shape into Shape List.
fn get_texture_references(&self) -> Vec<&Texture2D>
[src]
Gets all texture references excluding ibl textures.
fn texture<I: Into<Option<usize>>>(&self, i: I) -> Option<&Texture2D>
[src]
QoL function used to index into texture array.