Enum glium::program::ProgramCreationInput
source · pub enum ProgramCreationInput<'a> {
SourceCode {
vertex_shader: &'a str,
tessellation_control_shader: Option<&'a str>,
tessellation_evaluation_shader: Option<&'a str>,
geometry_shader: Option<&'a str>,
fragment_shader: &'a str,
transform_feedback_varyings: Option<(Vec<String>, TransformFeedbackMode)>,
outputs_srgb: bool,
uses_point_size: bool,
},
Binary {
data: Binary,
outputs_srgb: bool,
uses_point_size: bool,
},
SpirV(SpirvProgram<'a>),
}Expand description
Input when creating a program.
Variants§
SourceCode
Fields
§
tessellation_control_shader: Option<&'a str>Source code of the optional tessellation control shader.
§
tessellation_evaluation_shader: Option<&'a str>Source code of the optional tessellation evaluation shader.
§
transform_feedback_varyings: Option<(Vec<String>, TransformFeedbackMode)>The list of variables and mode to use for transform feedback.
The information specified here will be passed to the OpenGL linker. If you pass
None, then you won’t be able to use transform feedback.
Use GLSL source code.
Binary
Fields
Use a precompiled binary.
SpirV(SpirvProgram<'a>)
Use a SPIR-V binary.
Trait Implementations§
source§impl<'a> From<Binary> for ProgramCreationInput<'a>
impl<'a> From<Binary> for ProgramCreationInput<'a>
source§fn from(binary: Binary) -> ProgramCreationInput<'a>
fn from(binary: Binary) -> ProgramCreationInput<'a>
Converts to this type from the input type.
source§impl<'a> From<SourceCode<'a>> for ProgramCreationInput<'a>
impl<'a> From<SourceCode<'a>> for ProgramCreationInput<'a>
source§fn from(code: SourceCode<'a>) -> ProgramCreationInput<'a>
fn from(code: SourceCode<'a>) -> ProgramCreationInput<'a>
Converts to this type from the input type.
Auto Trait Implementations§
impl<'a> RefUnwindSafe for ProgramCreationInput<'a>
impl<'a> Send for ProgramCreationInput<'a>
impl<'a> Sync for ProgramCreationInput<'a>
impl<'a> Unpin for ProgramCreationInput<'a>
impl<'a> UnwindSafe for ProgramCreationInput<'a>
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