Struct screen_13::driver::ray_trace::RayTraceShaderGroup
source · pub struct RayTraceShaderGroup {
pub any_hit_shader: Option<u32>,
pub closest_hit_shader: Option<u32>,
pub general_shader: Option<u32>,
pub intersection_shader: Option<u32>,
pub ty: RayTraceShaderGroupType,
}
Expand description
Describes the set of the shader stages to be included in each shader group in the ray trace pipeline.
Fields§
§any_hit_shader: Option<u32>
The optional index of the any-hit shader in the group if the shader group has type of RayTraceShaderGroupType::TrianglesHitGroup or RayTraceShaderGroupType::ProceduralHitGroup.
closest_hit_shader: Option<u32>
The optional index of the closest hit shader in the group if the shader group has type of RayTraceShaderGroupType::TrianglesHitGroup or RayTraceShaderGroupType::ProceduralHitGroup.
general_shader: Option<u32>
The index of the ray generation, miss, or callable shader in the group if the shader group has type of RayTraceShaderGroupType::General.
intersection_shader: Option<u32>
The index of the intersection shader in the group if the shader group has type of RayTraceShaderGroupType::ProceduralHitGroup.
ty: RayTraceShaderGroupType
The type of hit group specified in this structure.
Implementations§
source§impl RayTraceShaderGroup
impl RayTraceShaderGroup
sourcepub fn new_general(general_shader: impl Into<Option<u32>>) -> Self
pub fn new_general(general_shader: impl Into<Option<u32>>) -> Self
Creates a new general-type shader group with the given general shader.
Trait Implementations§
source§impl Clone for RayTraceShaderGroup
impl Clone for RayTraceShaderGroup
source§fn clone(&self) -> RayTraceShaderGroup
fn clone(&self) -> RayTraceShaderGroup
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for RayTraceShaderGroup
impl Debug for RayTraceShaderGroup
source§impl From<RayTraceShaderGroup> for RayTracingShaderGroupCreateInfoKHR
impl From<RayTraceShaderGroup> for RayTracingShaderGroupCreateInfoKHR
source§fn from(shader_group: RayTraceShaderGroup) -> Self
fn from(shader_group: RayTraceShaderGroup) -> Self
impl Copy for RayTraceShaderGroup
Auto Trait Implementations§
impl Freeze for RayTraceShaderGroup
impl RefUnwindSafe for RayTraceShaderGroup
impl Send for RayTraceShaderGroup
impl Sync for RayTraceShaderGroup
impl Unpin for RayTraceShaderGroup
impl UnwindSafe for RayTraceShaderGroup
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
source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)