Struct three_d::renderer::material::DepthMaterial
source · pub struct DepthMaterial {
pub min_distance: Option<f32>,
pub max_distance: Option<f32>,
pub render_states: RenderStates,
}
Expand description
Used for rendering the distance from the camera to the object with this material in each pixel. Can be used for debug purposes but is also used to create shadow maps from light sources.
Fields§
§min_distance: Option<f32>
The minimum distance from the camera to any object. If None, then the near plane of the camera is used.
max_distance: Option<f32>
The maximum distance from the camera to any object. If None, then the far plane of the camera is used.
render_states: RenderStates
Render states.
Trait Implementations§
source§impl Clone for DepthMaterial
impl Clone for DepthMaterial
source§fn clone(&self) -> DepthMaterial
fn clone(&self) -> DepthMaterial
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Default for DepthMaterial
impl Default for DepthMaterial
source§fn default() -> DepthMaterial
fn default() -> DepthMaterial
Returns the “default value” for a type. Read more
source§impl FromCpuMaterial for DepthMaterial
impl FromCpuMaterial for DepthMaterial
source§fn from_cpu_material(_context: &Context, _cpu_material: &CpuMaterial) -> Self
fn from_cpu_material(_context: &Context, _cpu_material: &CpuMaterial) -> Self
Creates a new material that can be used for rendering from a CpuMaterial.
source§impl Material for DepthMaterial
impl Material for DepthMaterial
source§fn id(&self) -> u16
fn id(&self) -> u16
Returns a unique ID for each variation of the shader source returned from Material::fragment_shader_source. Read more
source§fn fragment_shader_source(&self, _lights: &[&dyn Light]) -> String
fn fragment_shader_source(&self, _lights: &[&dyn Light]) -> String
Returns the fragment shader source for this material.
source§fn fragment_attributes(&self) -> FragmentAttributes
fn fragment_attributes(&self) -> FragmentAttributes
Returns a FragmentAttributes struct that describes which fragment attributes,
ie. the input from the vertex shader, are required for rendering with this material.
source§fn use_uniforms(
&self,
program: &Program,
camera: &Camera,
_lights: &[&dyn Light]
)
fn use_uniforms( &self, program: &Program, camera: &Camera, _lights: &[&dyn Light] )
Sends the uniform data needed for this material to the fragment shader.
source§fn render_states(&self) -> RenderStates
fn render_states(&self) -> RenderStates
Returns the render states needed to render with this material.
source§fn material_type(&self) -> MaterialType
fn material_type(&self) -> MaterialType
Returns the type of material.
Auto Trait Implementations§
impl RefUnwindSafe for DepthMaterial
impl Send for DepthMaterial
impl Sync for DepthMaterial
impl Unpin for DepthMaterial
impl UnwindSafe for DepthMaterial
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more