[][src]Struct grr::Shader

#[repr(transparent)]
pub struct Shader(_);

Shader.

Shaders are programmable parts of Pipelines. Each shader has a fixed ShaderStage in the pipeline. Shaders may be reused in different pipelines and specify the operations which will transform a predefined set of inputs into a set of output variables. The shader stages defines the input and output layout.

Beside the input and output variables, shaders can also access GPU memory via bound buffers and images.

Shading Lanuage

OpenGL comes with an defined Shading Language (GLSL), which will be also used in the documentation for writing shaders. The OpenGL drivers will translate the GLSL shaders into IHV specific machine language via an built-in compiler. Beside the shader representation in text form (GLSL) with GL 4.6 comes also support for the binary SPIR-V format.

Trait Implementations

impl Object for Shader[src]

impl Clone for Shader[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Copy for Shader[src]

Auto Trait Implementations

impl Sync for Shader

impl Send for Shader

impl Unpin for Shader

impl RefUnwindSafe for Shader

impl UnwindSafe for Shader

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]