Module vulkano::pipeline::shader[][src]

Expand description

Stage of a graphics pipeline.

In Vulkan, shaders are grouped in shader modules. Each shader module is built from SPIR-V code and can contain one or more entry points. Note that for the moment the official GLSL-to-SPIR-V compiler does not support multiple entry points.

The vulkano library does not provide any functionality that checks and introspects the SPIR-V code, therefore the whole shader-related API is unsafe. You are encouraged to use the vulkano-shaders crate that will generate Rust code that wraps around vulkano’s shaders API.

Structs

ComputeEntryPoint

Represents the entry point of a compute shader in a shader module.

GraphicsEntryPoint

Represents a shader entry point in a shader module.

ShaderInterface

Type that contains the definition of an interface between two shader stages, or between the outside and a shader stage.

ShaderInterfaceEntry

Entry of a shader interface definition.

ShaderModule

Contains SPIR-V code with one or more entry points.

SpecializationMapEntry

Describes an individual constant to set in the shader. Also a field in the struct.

Enums

GeometryShaderExecutionMode

Declares which type of primitives are expected by the geometry shader.

GraphicsShaderType
ShaderInterfaceMismatchError

Error that can happen when the interface mismatches between two shader stages.

Traits

EntryPointAbstract
SpecializationConstants

Trait for types that contain specialization data for shaders.