[−][src]Struct golem::ShaderDescription
The parameters to create a ShaderProgram
Fields
vertex_input: &'a [Attribute]
The inputs to the vertex shader stage, which are also the inputs to the whole shader
fragment_input: &'a [Attribute]
The inputs to the fragment shader stage, which are also the outputs from the vertex shader
uniforms: &'a [Uniform]
The uniform values available to all shader stages, across all vertices of a draw call
Uniforms can be bound with ShaderProgram::set_uniform
vertex_shader: &'a str
The text of the vertex shader stage
Do not include the vertex inputs, outputs, or uniforms, use the vertex_input
,
fragment_input
, and uniforms
fields instead. Just provide the 'main' function, as
well as any helpers. The shader inputs, outputs, and uniforms will be generated for you.
The inputs to this stage are defined as the vertex_input
and the ouptuts are the
fragment_input
as well as gl_Position
, a vec4 that represents the vertex's position.
fragment_shader: &'a str
The text of the fragment shader stage
See the documentation of the vertex_shader
. The inputs to this stage are
defined as the fragment_input
and the ouptut is gl_FragColor
, a vec4 that represents
the RGBA color of the fragment. Use the function texture
to read values from GLSL
textures; it will be converted to texture2D
on the web backend.
Auto Trait Implementations
impl<'a> RefUnwindSafe for ShaderDescription<'a>
impl<'a> Send for ShaderDescription<'a>
impl<'a> Sync for ShaderDescription<'a>
impl<'a> Unpin for ShaderDescription<'a>
impl<'a> UnwindSafe for ShaderDescription<'a>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,