Skip to main content

MaterialTrait

Trait MaterialTrait 

Source
pub trait MaterialTrait:
    Any
    + Send
    + Sync
    + Debug {
    // Required methods
    fn as_any(&self) -> &(dyn Any + 'static);
    fn as_any_mut(&mut self) -> &mut (dyn Any + 'static);
}
Expand description

Base trait for all material types.

This is the user-facing interface for materials. For everyday use, simply treat materials as dyn Material.

§Note

Users typically don’t need to implement this trait directly. Use the built-in material types or implement RenderableMaterialTrait for custom materials.

Required Methods§

Source

fn as_any(&self) -> &(dyn Any + 'static)

Returns self as Any for downcasting.

Source

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Returns mutable self as Any for downcasting.

Implementors§