pub struct Material {Show 15 fields
pub name: String,
pub ambient: [f32; 3],
pub diffuse: [f32; 3],
pub specular: [f32; 3],
pub shininess: f32,
pub dissolve: f32,
pub optical_density: f32,
pub ambient_texture: String,
pub diffuse_texture: String,
pub specular_texture: String,
pub normal_texture: String,
pub shininess_texture: String,
pub dissolve_texture: String,
pub illumination_model: Option<u8>,
pub unknown_param: AHashMap<String, String>,
}
Expand description
A material that may be referenced by one or more Mesh
es.
Standard MTL
attributes are supported. Any unrecognized parameters will be
stored as key-value pairs in the unknown_param
HashMap
, which maps the unknown parameter to
the value set for it.
No path is pre-pended to the texture file names specified in the MTL
file.
Fields
name: String
Material name as specified in the MTL
file.
ambient: [f32; 3]
Ambient color of the material.
diffuse: [f32; 3]
Diffuse color of the material.
specular: [f32; 3]
Specular color of the material.
shininess: f32
Material shininess attribute. Also called glossiness
.
dissolve: f32
Dissolve attribute is the alpha term for the material. Referred to as
dissolve since that’s what the MTL
file format docs refer to it as.
optical_density: f32
Optical density also known as index of refraction. Called
optical_density
in the MTL
specc. Takes on a value between 0.001
and 10.0. 1.0 means light does not bend as it passes through
the object.
ambient_texture: String
Name of the ambient texture file for the material.
diffuse_texture: String
Name of the diffuse texture file for the material.
specular_texture: String
Name of the specular texture file for the material.
normal_texture: String
Name of the normal map texture file for the material.
shininess_texture: String
Name of the shininess map texture file for the material.
dissolve_texture: String
Name of the alpha/opacity map texture file for the material.
Referred to as dissolve
to match the MTL
file format specification.
illumination_model: Option<u8>
The illumnination model to use for this material. The different
illumnination models are specified in the MTL
spec.
unknown_param: AHashMap<String, String>
Key value pairs of any unrecognized parameters encountered while parsing the material.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Material
impl Send for Material
impl Sync for Material
impl Unpin for Material
impl UnwindSafe for Material
Blanket Implementations
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