pub struct PhysicalDeviceConservativeRasterizationPropertiesEXT<'a> {
pub s_type: StructureType,
pub p_next: *mut c_void,
pub primitive_overestimation_size: f32,
pub max_extra_primitive_overestimation_size: f32,
pub extra_primitive_overestimation_size_granularity: f32,
pub primitive_underestimation: Bool32,
pub conservative_point_and_line_rasterization: Bool32,
pub degenerate_triangles_rasterized: Bool32,
pub degenerate_lines_rasterized: Bool32,
pub fully_covered_fragment_shader_input_variable: Bool32,
pub conservative_rasterization_post_depth_coverage: Bool32,
/* private fields */
}Expand description
Native structure VkPhysicalDeviceConservativeRasterizationPropertiesEXT.
Khronos reference: VkPhysicalDeviceConservativeRasterizationPropertiesEXT
Fields§
§s_type: StructureTypeNative field sType.
p_next: *mut c_voidNative field pNext.
primitive_overestimation_size: f32Native field primitiveOverestimationSize.
max_extra_primitive_overestimation_size: f32Native field maxExtraPrimitiveOverestimationSize.
extra_primitive_overestimation_size_granularity: f32Native field extraPrimitiveOverestimationSizeGranularity.
primitive_underestimation: Bool32Native field primitiveUnderestimation.
conservative_point_and_line_rasterization: Bool32Native field conservativePointAndLineRasterization.
degenerate_triangles_rasterized: Bool32Native field degenerateTrianglesRasterized.
degenerate_lines_rasterized: Bool32Native field degenerateLinesRasterized.
fully_covered_fragment_shader_input_variable: Bool32Native field fullyCoveredFragmentShaderInputVariable.
conservative_rasterization_post_depth_coverage: Bool32Native field conservativeRasterizationPostDepthCoverage.
Implementations§
Source§impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a>
impl<'a> PhysicalDeviceConservativeRasterizationPropertiesEXT<'a>
Sourcepub fn new() -> Self
pub fn new() -> Self
Construct the record with its canonical sType tag and default native state.
Sourcepub fn set_primitive_overestimation_size(self, value: f32) -> Self
pub fn set_primitive_overestimation_size(self, value: f32) -> Self
Set native field primitiveOverestimationSize without native effects.
Sourcepub fn set_max_extra_primitive_overestimation_size(self, value: f32) -> Self
pub fn set_max_extra_primitive_overestimation_size(self, value: f32) -> Self
Set native field maxExtraPrimitiveOverestimationSize without native effects.
Sourcepub fn set_extra_primitive_overestimation_size_granularity(
self,
value: f32,
) -> Self
pub fn set_extra_primitive_overestimation_size_granularity( self, value: f32, ) -> Self
Set native field extraPrimitiveOverestimationSizeGranularity without native effects.
Sourcepub fn set_primitive_underestimation(self, value: Bool32) -> Self
pub fn set_primitive_underestimation(self, value: Bool32) -> Self
Set native field primitiveUnderestimation without native effects.
Sourcepub fn set_conservative_point_and_line_rasterization(
self,
value: Bool32,
) -> Self
pub fn set_conservative_point_and_line_rasterization( self, value: Bool32, ) -> Self
Set native field conservativePointAndLineRasterization without native effects.
Sourcepub fn set_degenerate_triangles_rasterized(self, value: Bool32) -> Self
pub fn set_degenerate_triangles_rasterized(self, value: Bool32) -> Self
Set native field degenerateTrianglesRasterized without native effects.
Sourcepub fn set_degenerate_lines_rasterized(self, value: Bool32) -> Self
pub fn set_degenerate_lines_rasterized(self, value: Bool32) -> Self
Set native field degenerateLinesRasterized without native effects.
Sourcepub fn set_fully_covered_fragment_shader_input_variable(
self,
value: Bool32,
) -> Self
pub fn set_fully_covered_fragment_shader_input_variable( self, value: Bool32, ) -> Self
Set native field fullyCoveredFragmentShaderInputVariable without native effects.
Sourcepub fn set_conservative_rasterization_post_depth_coverage(
self,
value: Bool32,
) -> Self
pub fn set_conservative_rasterization_post_depth_coverage( self, value: Bool32, ) -> Self
Set native field conservativeRasterizationPostDepthCoverage 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.