<?xml version="1.0" encoding="UTF-8" ?>
<class name="RDPipelineRasterizationState" inherits="RefCounted" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Pipeline rasterization state (used by [RenderingDevice]).
	</brief_description>
	<description>
		This object is used by [RenderingDevice].
	</description>
	<tutorials>
	</tutorials>
	<members>
		<member name="cull_mode" type="int" setter="set_cull_mode" getter="get_cull_mode" enum="RenderingDevice.PolygonCullMode" default="0">
			The cull mode to use when drawing polygons, which determines whether front faces or backfaces are hidden.
		</member>
		<member name="depth_bias_clamp" type="float" setter="set_depth_bias_clamp" getter="get_depth_bias_clamp" default="0.0">
			A limit for how much each depth value can be offset. If negative, it serves as a minimum value, but if positive, it serves as a maximum value.
		</member>
		<member name="depth_bias_constant_factor" type="float" setter="set_depth_bias_constant_factor" getter="get_depth_bias_constant_factor" default="0.0">
			A constant offset added to each depth value. Applied after [member depth_bias_slope_factor].
		</member>
		<member name="depth_bias_enabled" type="bool" setter="set_depth_bias_enabled" getter="get_depth_bias_enabled" default="false">
			If [code]true[/code], each generated depth value will by offset by some amount. The specific amount is generated per polygon based on the values of [member depth_bias_slope_factor] and [member depth_bias_constant_factor].
		</member>
		<member name="depth_bias_slope_factor" type="float" setter="set_depth_bias_slope_factor" getter="get_depth_bias_slope_factor" default="0.0">
			A constant scale applied to the slope of each polygons' depth. Applied before [member depth_bias_constant_factor].
		</member>
		<member name="discard_primitives" type="bool" setter="set_discard_primitives" getter="get_discard_primitives" default="false">
			If [code]true[/code], primitives are discarded immediately before the rasterization stage.
		</member>
		<member name="enable_depth_clamp" type="bool" setter="set_enable_depth_clamp" getter="get_enable_depth_clamp" default="false">
			If [code]true[/code], clamps depth values according to the minimum and maximum depth of the associated viewport.
		</member>
		<member name="front_face" type="int" setter="set_front_face" getter="get_front_face" enum="RenderingDevice.PolygonFrontFace" default="0">
			The winding order to use to determine which face of a triangle is considered its front face.
		</member>
		<member name="line_width" type="float" setter="set_line_width" getter="get_line_width" default="1.0">
			The line width to use when drawing lines (in pixels). Thick lines may not be supported on all hardware.
		</member>
		<member name="patch_control_points" type="int" setter="set_patch_control_points" getter="get_patch_control_points" default="1">
			The number of control points to use when drawing a patch with tessellation enabled. Higher values result in higher quality at the cost of performance.
		</member>
		<member name="wireframe" type="bool" setter="set_wireframe" getter="get_wireframe" default="false">
			If [code]true[/code], performs wireframe rendering for triangles instead of flat or textured rendering.
		</member>
	</members>
</class>
