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§
fn vertex_shader() -> &'static strwhere
Self: Sized,
fn fragment_shader() -> &'static strwhere
Self: Sized,
Provided Methods§
fn setup_pipeline(&self, _pipeline: &GraphicsPipeline)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Box<dyn Material>
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>,
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>
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>,
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>
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>,
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>
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>,
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
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,
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
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,
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
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,
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
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,
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