Struct tobj::Material [−][src]
pub struct Material {}Show 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
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more