#[non_exhaustive]pub enum RenderError {
Show 22 variants
ZeroDimension,
DimensionTooLarge,
InvalidColor,
InvalidVisual,
InvalidEffectParameter,
UnknownEffect,
InvalidEffectParams,
InvalidEffectResource,
MissingEffectResource,
EffectResourceKindMismatch,
MissingEffectInput,
MissingText,
InvalidImageData,
TextureReadback(ReadbackFailure),
InvalidGraph,
ExternalTextureSync(Option<GpuFault>),
InvalidPlaneTarget,
GpuTimeout,
GpuWorkDropped,
Gpu {
kind: GpuErrorKind,
},
GpuDeviceLost,
UnsupportedHdr,
}Expand description
Render input or output failure.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
ZeroDimension
Render targets must have non-zero dimensions.
DimensionTooLarge
Render dimensions exceed the configured or physical device limit.
InvalidColor
Colors must be finite, inside the unit interval, and premultiplied: no color component above alpha.
InvalidVisual
A layer transform is non-finite, has zero scale, or invalid opacity.
InvalidEffectParameter
An effect parameter is non-finite or outside its supported range.
UnknownEffect
No effect with the requested identity is registered.
InvalidEffectParams
Supplied parameter names or types do not match the effect schema.
InvalidEffectResource
An uploaded effect resource has an invalid identity, shape, or payload.
MissingEffectResource
An effect invocation omitted a required registered resource.
EffectResourceKindMismatch
A resource identity resolves to a different representation than required.
MissingEffectInput
A transition invocation omitted its second texture.
MissingText
A frame shows a caption, text generator or layout its host did not prepare at the frame’s size.
InvalidImageData
RGBA input byte length does not match the declared image size.
TextureReadback(ReadbackFailure)
A rendered texture could not be read back to host memory, and where.
InvalidGraph
An internally constructed render graph was structurally invalid.
ExternalTextureSync(Option<GpuFault>)
A native texture could not synchronize with the render submission, and what the platform’s status for that said about the device, when it said anything.
InvalidPlaneTarget
Caller-supplied NV12 planes are not an R8 luma and an RG8 chroma render attachment at the output size and half of it.
GpuTimeout
GPU work did not complete within the renderer’s wait timeout.
GpuWorkDropped
The device completed a submission without running it: a readback came back without the bytes its submission copied. The renderer refuses work from then on; only a new process gets a device that runs it.
Gpu
The GPU rejected this frame’s work, for this kind of error: an allocation it could not make, or invalid use (often of what failed to allocate). Nothing in the submission ran; the device is fine, and the renderer kept nothing of the frame.
Fields
kind: GpuErrorKindThe class of error the GPU reported.
GpuDeviceLost
The device is lost: it can no longer make the resources a frame needs. The renderer refuses work from then on.
UnsupportedHdr
An HDR (PQ or HLG) source met crate::ColorPolicy::RejectHdr: the
project’s color pipeline refuses it rather than show it.
Trait Implementations§
Source§impl Clone for RenderError
impl Clone for RenderError
impl Copy for RenderError
Source§impl Debug for RenderError
impl Debug for RenderError
Source§impl Display for RenderError
impl Display for RenderError
impl Eq for RenderError
Source§impl Error for RenderError
impl Error for RenderError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<RenderError> for GraphError
impl From<RenderError> for GraphError
Source§fn from(error: RenderError) -> Self
fn from(error: RenderError) -> Self
Source§impl PartialEq for RenderError
impl PartialEq for RenderError
impl StructuralPartialEq for RenderError
Auto Trait Implementations§
impl Freeze for RenderError
impl RefUnwindSafe for RenderError
impl Send for RenderError
impl Sync for RenderError
impl Unpin for RenderError
impl UnsafeUnpin for RenderError
impl UnwindSafe for RenderError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.