pub enum GraphicsPipelineCreationError {
Show 39 variants
OomError(OomError),
IncompatiblePipelineLayout(PipelineLayoutNotSupersetError),
VertexGeometryStagesMismatch(ShaderInterfaceMismatchError),
VertexTessControlStagesMismatch(ShaderInterfaceMismatchError),
VertexFragmentStagesMismatch(ShaderInterfaceMismatchError),
TessControlTessEvalStagesMismatch(ShaderInterfaceMismatchError),
TessEvalGeometryStagesMismatch(ShaderInterfaceMismatchError),
TessEvalFragmentStagesMismatch(ShaderInterfaceMismatchError),
GeometryFragmentStagesMismatch(ShaderInterfaceMismatchError),
FragmentShaderRenderPassIncompatible,
IncompatibleVertexDefinition(IncompatibleVertexDefinitionError),
MaxVertexInputBindingStrideExceeded {
binding: usize,
max: usize,
obtained: usize,
},
MaxVertexInputBindingsExceeded {
max: usize,
obtained: usize,
},
MaxVertexInputAttributeOffsetExceeded {
max: usize,
obtained: usize,
},
MaxVertexInputAttributesExceeded {
max: usize,
obtained: usize,
},
PrimitiveDoesntSupportPrimitiveRestart {
primitive: PrimitiveTopology,
},
MultiViewportFeatureNotEnabled,
MaxViewportsExceeded {
max: u32,
obtained: u32,
},
MaxViewportDimensionsExceeded,
ViewportBoundsExceeded,
WideLinesFeatureNotEnabled,
DepthClampFeatureNotEnabled,
DepthBiasClampFeatureNotEnabled,
FillModeNonSolidFeatureNotEnabled,
DepthBoundsFeatureNotEnabled,
WrongStencilState,
TopologyNotMatchingGeometryShader,
GeometryShaderFeatureNotEnabled,
TessellationShaderFeatureNotEnabled,
MismatchBlendingAttachmentsCount,
IndependentBlendFeatureNotEnabled,
LogicOpFeatureNotEnabled,
NoDepthAttachment,
NoStencilAttachment,
InvalidPrimitiveTopology,
MaxTessellationPatchSizeExceeded,
WrongShaderType,
SampleRateShadingFeatureNotEnabled,
AlphaToOneFeatureNotEnabled,
}
Expand description
Error that can happen when creating a graphics pipeline.
Variants
OomError(OomError)
Not enough memory.
IncompatiblePipelineLayout(PipelineLayoutNotSupersetError)
The pipeline layout is not compatible with what the shaders expect.
VertexGeometryStagesMismatch(ShaderInterfaceMismatchError)
The interface between the vertex shader and the geometry shader mismatches.
VertexTessControlStagesMismatch(ShaderInterfaceMismatchError)
The interface between the vertex shader and the tessellation control shader mismatches.
VertexFragmentStagesMismatch(ShaderInterfaceMismatchError)
The interface between the vertex shader and the fragment shader mismatches.
TessControlTessEvalStagesMismatch(ShaderInterfaceMismatchError)
The interface between the tessellation control shader and the tessellation evaluation shader mismatches.
TessEvalGeometryStagesMismatch(ShaderInterfaceMismatchError)
The interface between the tessellation evaluation shader and the geometry shader mismatches.
TessEvalFragmentStagesMismatch(ShaderInterfaceMismatchError)
The interface between the tessellation evaluation shader and the fragment shader mismatches.
GeometryFragmentStagesMismatch(ShaderInterfaceMismatchError)
The interface between the geometry shader and the fragment shader mismatches.
FragmentShaderRenderPassIncompatible
The output of the fragment shader is not compatible with what the render pass subpass expects.
IncompatibleVertexDefinition(IncompatibleVertexDefinitionError)
The vertex definition is not compatible with the input of the vertex shader.
MaxVertexInputBindingStrideExceeded
Fields
binding: usize
Index of the faulty binding.
max: usize
Maximum allowed value.
obtained: usize
Value that was passed.
The maximum stride value for vertex input (ie. the distance between two vertex elements) has been exceeded.
MaxVertexInputBindingsExceeded
The maximum number of vertex sources has been exceeded.
MaxVertexInputAttributeOffsetExceeded
The maximum offset for a vertex attribute has been exceeded. This means that your vertex struct is too large.
MaxVertexInputAttributesExceeded
The maximum number of vertex attributes has been exceeded.
PrimitiveDoesntSupportPrimitiveRestart
Fields
primitive: PrimitiveTopology
The topology that doesn’t support primitive restart.
The user requested to use primitive restart, but the primitive topology doesn’t support it.
MultiViewportFeatureNotEnabled
The multi_viewport
feature must be enabled in order to use multiple viewports at once.
MaxViewportsExceeded
The maximum number of viewports has been exceeded.
MaxViewportDimensionsExceeded
The maximum dimensions of viewports has been exceeded.
ViewportBoundsExceeded
The minimum or maximum bounds of viewports have been exceeded.
WideLinesFeatureNotEnabled
The wide_lines
feature must be enabled in order to use a line width greater than 1.0.
DepthClampFeatureNotEnabled
The depth_clamp
feature must be enabled in order to use depth clamping.
DepthBiasClampFeatureNotEnabled
The depth_bias_clamp
feature must be enabled in order to use a depth bias clamp different
from 0.0.
FillModeNonSolidFeatureNotEnabled
The fill_mode_non_solid
feature must be enabled in order to use a polygon mode different
from Fill
.
DepthBoundsFeatureNotEnabled
The depth_bounds
feature must be enabled in order to use depth bounds testing.
WrongStencilState
The requested stencil test is invalid.
TopologyNotMatchingGeometryShader
The primitives topology does not match what the geometry shader expects.
GeometryShaderFeatureNotEnabled
The geometry_shader
feature must be enabled in order to use geometry shaders.
TessellationShaderFeatureNotEnabled
The tessellation_shader
feature must be enabled in order to use tessellation shaders.
MismatchBlendingAttachmentsCount
The number of attachments specified in the blending does not match the number of attachments in the subpass.
IndependentBlendFeatureNotEnabled
The independent_blend
feature must be enabled in order to use different blending
operations per attachment.
LogicOpFeatureNotEnabled
The logic_op
feature must be enabled in order to use logic operations.
NoDepthAttachment
The depth test requires a depth attachment but render pass has no depth attachment, or depth writing is enabled and the depth attachment is read-only.
NoStencilAttachment
The stencil test requires a stencil attachment but render pass has no stencil attachment, or stencil writing is enabled and the stencil attachment is read-only.
InvalidPrimitiveTopology
Tried to use a patch list without a tessellation shader, or a non-patch-list with a tessellation shader.
MaxTessellationPatchSizeExceeded
The maxTessellationPatchSize
limit was exceeded.
WrongShaderType
The wrong type of shader has been passed.
For example you passed a vertex shader as the fragment shader.
SampleRateShadingFeatureNotEnabled
The sample_rate_shading
feature must be enabled in order to use sample shading.
AlphaToOneFeatureNotEnabled
The alpha_to_one
feature must be enabled in order to use alpha-to-one.
Trait Implementations
sourceimpl Clone for GraphicsPipelineCreationError
impl Clone for GraphicsPipelineCreationError
sourcefn clone(&self) -> GraphicsPipelineCreationError
fn clone(&self) -> GraphicsPipelineCreationError
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more