summaryrefslogtreecommitdiffstats
path: root/src/gallium/include/pipe/p_state.h
diff options
context:
space:
mode:
authorAxel Davy <[email protected]>2016-06-13 22:28:32 +0200
committerAxel Davy <[email protected]>2016-06-25 10:16:15 +0200
commit59a692916ca251db995050f7fc0bb7b4e6e4780b (patch)
tree1bd5a11a8ac89a04e24b0ed61f39f5f5002fd9fa /src/gallium/include/pipe/p_state.h
parent727a9b24933d384f5440ed4318fb720ed11d6dd1 (diff)
gallium: Add a cap for offset_units_unscaled
D3D9 has a different behaviour for depth bias. For OGL/D3D1X, the depth bias unit is the minimal resolvable value for the depth buffer, which depends on the format (and has different behaviour for float depth buffers). For D3D9, the depth bias unit is 1.0f. Signed-off-by: Axel Davy <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/include/pipe/p_state.h')
-rw-r--r--src/gallium/include/pipe/p_state.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h
index 9c693555c7e..1543e90972e 100644
--- a/src/gallium/include/pipe/p_state.h
+++ b/src/gallium/include/pipe/p_state.h
@@ -140,6 +140,13 @@ struct pipe_rasterizer_state
unsigned clip_halfz:1;
/**
+ * When true do not scale offset_units and use same rules for unorm and
+ * float depth buffers (D3D9). When false use GL/D3D1X behaviour.
+ * This depends on PIPE_CAP_POLYGON_OFFSET_UNITS_UNSCALED.
+ */
+ unsigned offset_units_unscaled:1;
+
+ /**
* Enable bits for clipping half-spaces.
* This applies to both user clip planes and shader clip distances.
* Note that if the bound shader exports any clip distances, these