Trait Material

Source
pub trait Material:
    Debug
    + Send
    + Sync
    + 'static
    + Serialize
    + Deserialize {
    // Required methods
    fn vertex_shader() -> &'static str
       where Self: Sized;
    fn fragment_shader() -> &'static str
       where Self: Sized;

    // Provided method
    fn setup_pipeline(&self, _pipeline: &GraphicsPipeline) { ... }
}

Required Methods§

Source

fn vertex_shader() -> &'static str
where Self: Sized,

Source

fn fragment_shader() -> &'static str
where Self: Sized,

Provided Methods§

Source

fn setup_pipeline(&self, _pipeline: &GraphicsPipeline)

Trait Implementations§

Source§

impl<'de> Deserialize<'de> for Box<dyn Material>

Source§

fn deserialize<D>( deserializer: D, ) -> Result<Box<dyn Material>, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'de> Deserialize<'de> for Box<dyn Material + Send>

Source§

fn deserialize<D>( deserializer: D, ) -> Result<Box<dyn Material + Send>, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'de> Deserialize<'de> for Box<dyn Material + Sync + Send>

Source§

fn deserialize<D>( deserializer: D, ) -> Result<Box<dyn Material + Sync + Send>, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'de> Deserialize<'de> for Box<dyn Material + Sync>

Source§

fn deserialize<D>( deserializer: D, ) -> Result<Box<dyn Material + Sync>, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'typetag> Serialize for dyn Material + 'typetag

Source§

fn serialize<S>( &self, serializer: S, ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<'typetag> Serialize for dyn Material + Send + 'typetag

Source§

fn serialize<S>( &self, serializer: S, ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<'typetag> Serialize for dyn Material + Sync + Send + 'typetag

Source§

fn serialize<S>( &self, serializer: S, ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<'typetag> Serialize for dyn Material + Sync + 'typetag

Source§

fn serialize<S>( &self, serializer: S, ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more

Implementors§