Struct screen_13::driver::physical_device::RayTraceFeatures
source · pub struct RayTraceFeatures {
pub ray_tracing_pipeline: bool,
pub ray_tracing_pipeline_shader_group_handle_capture_replay: bool,
pub ray_tracing_pipeline_shader_group_handle_capture_replay_mixed: bool,
pub ray_tracing_pipeline_trace_rays_indirect: bool,
pub ray_traversal_primitive_culling: bool,
}
Expand description
Features of the physical device for ray tracing.
See
VkPhysicalDeviceRayTracingPipelineFeaturesKHR
manual page.
Fields§
§ray_tracing_pipeline: bool
Indicates whether the implementation supports the ray tracing pipeline functionality.
See Ray Tracing.
ray_tracing_pipeline_shader_group_handle_capture_replay: bool
Indicates whether the implementation supports saving and reusing shader group handles, e.g. for trace capture and replay.
ray_tracing_pipeline_shader_group_handle_capture_replay_mixed: bool
Indicates whether the implementation supports reuse of shader group handles being arbitrarily mixed with creation of non-reused shader group handles.
If this is false
, all reused shader group handles must be specified before any non-reused
handles may be created.
ray_tracing_pipeline_trace_rays_indirect: bool
Indicates whether the implementation supports indirect ray tracing commands, e.g.
vkCmdTraceRaysIndirectKHR
.
ray_traversal_primitive_culling: bool
Indicates whether the implementation supports primitive culling during ray traversal.
Trait Implementations§
source§impl Debug for RayTraceFeatures
impl Debug for RayTraceFeatures
source§impl Default for RayTraceFeatures
impl Default for RayTraceFeatures
source§fn default() -> RayTraceFeatures
fn default() -> RayTraceFeatures
source§impl From<PhysicalDeviceRayTracingPipelineFeaturesKHR> for RayTraceFeatures
impl From<PhysicalDeviceRayTracingPipelineFeaturesKHR> for RayTraceFeatures
source§fn from(features: PhysicalDeviceRayTracingPipelineFeaturesKHR) -> Self
fn from(features: PhysicalDeviceRayTracingPipelineFeaturesKHR) -> Self
Auto Trait Implementations§
impl RefUnwindSafe for RayTraceFeatures
impl Send for RayTraceFeatures
impl Sync for RayTraceFeatures
impl Unpin for RayTraceFeatures
impl UnwindSafe for RayTraceFeatures
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.