pub struct PhysicalDeviceRayTracingPropertiesNV<'a> {
pub s_type: StructureType,
pub p_next: *mut c_void,
pub shader_group_handle_size: u32,
pub max_recursion_depth: u32,
pub max_shader_group_stride: u32,
pub shader_group_base_alignment: u32,
pub max_geometry_count: u64,
pub max_instance_count: u64,
pub max_triangle_count: u64,
pub max_descriptor_set_acceleration_structures: u32,
/* private fields */
}Expand description
Native structure VkPhysicalDeviceRayTracingPropertiesNV.
Fields§
§s_type: StructureTypeNative field sType.
p_next: *mut c_voidNative field pNext.
shader_group_handle_size: u32Native field shaderGroupHandleSize.
max_recursion_depth: u32Native field maxRecursionDepth.
max_shader_group_stride: u32Native field maxShaderGroupStride.
shader_group_base_alignment: u32Native field shaderGroupBaseAlignment.
max_geometry_count: u64Native field maxGeometryCount.
max_instance_count: u64Native field maxInstanceCount.
max_triangle_count: u64Native field maxTriangleCount.
max_descriptor_set_acceleration_structures: u32Native field maxDescriptorSetAccelerationStructures.
Implementations§
Source§impl<'a> PhysicalDeviceRayTracingPropertiesNV<'a>
impl<'a> PhysicalDeviceRayTracingPropertiesNV<'a>
Sourcepub fn new() -> Self
pub fn new() -> Self
Construct the record with its canonical sType tag and default native state.
Sourcepub fn set_shader_group_handle_size(self, value: u32) -> Self
pub fn set_shader_group_handle_size(self, value: u32) -> Self
Set native field shaderGroupHandleSize without native effects.
Sourcepub fn set_max_recursion_depth(self, value: u32) -> Self
pub fn set_max_recursion_depth(self, value: u32) -> Self
Set native field maxRecursionDepth without native effects.
Sourcepub fn set_max_shader_group_stride(self, value: u32) -> Self
pub fn set_max_shader_group_stride(self, value: u32) -> Self
Set native field maxShaderGroupStride without native effects.
Sourcepub fn set_shader_group_base_alignment(self, value: u32) -> Self
pub fn set_shader_group_base_alignment(self, value: u32) -> Self
Set native field shaderGroupBaseAlignment without native effects.
Sourcepub fn set_max_geometry_count(self, value: u64) -> Self
pub fn set_max_geometry_count(self, value: u64) -> Self
Set native field maxGeometryCount without native effects.
Sourcepub fn set_max_instance_count(self, value: u64) -> Self
pub fn set_max_instance_count(self, value: u64) -> Self
Set native field maxInstanceCount without native effects.
Sourcepub fn set_max_triangle_count(self, value: u64) -> Self
pub fn set_max_triangle_count(self, value: u64) -> Self
Set native field maxTriangleCount without native effects.
Sourcepub fn set_max_descriptor_set_acceleration_structures(self, value: u32) -> Self
pub fn set_max_descriptor_set_acceleration_structures(self, value: u32) -> Self
Set native field maxDescriptorSetAccelerationStructures without native effects.
Sourcepub fn push_next<T: Extends<Self>>(
self,
next: &'a mut T,
) -> Result<Self, ConstructionError>
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
§Errors
Returns a construction error for a changed structure tag or already-linked node.