anv/pipeline: Respect pRasterizationState->depthBiasEnable
This commit is contained in:
parent
9d7faadd8a
commit
fa8539dd6b
|
@ -525,9 +525,6 @@ genX(cmd_buffer_flush_state)(struct anv_cmd_buffer *cmd_buffer)
|
|||
ANV_CMD_DIRTY_DYNAMIC_LINE_WIDTH |
|
||||
ANV_CMD_DIRTY_DYNAMIC_DEPTH_BIAS)) {
|
||||
|
||||
bool enable_bias = cmd_buffer->state.dynamic.depth_bias.bias != 0.0f ||
|
||||
cmd_buffer->state.dynamic.depth_bias.slope != 0.0f;
|
||||
|
||||
const struct anv_image_view *iview =
|
||||
anv_cmd_buffer_get_depth_stencil_view(cmd_buffer);
|
||||
const struct anv_image *image = iview ? iview->image : NULL;
|
||||
|
@ -543,9 +540,6 @@ genX(cmd_buffer_flush_state)(struct anv_cmd_buffer *cmd_buffer)
|
|||
GENX(3DSTATE_SF_header),
|
||||
.DepthBufferSurfaceFormat = depth_format,
|
||||
.LineWidth = cmd_buffer->state.dynamic.line_width,
|
||||
.GlobalDepthOffsetEnableSolid = enable_bias,
|
||||
.GlobalDepthOffsetEnableWireframe = enable_bias,
|
||||
.GlobalDepthOffsetEnablePoint = enable_bias,
|
||||
.GlobalDepthOffsetConstant = cmd_buffer->state.dynamic.depth_bias.bias,
|
||||
.GlobalDepthOffsetScale = cmd_buffer->state.dynamic.depth_bias.slope,
|
||||
.GlobalDepthOffsetClamp = cmd_buffer->state.dynamic.depth_bias.clamp
|
||||
|
|
|
@ -67,6 +67,9 @@ gen7_emit_rs_state(struct anv_pipeline *pipeline,
|
|||
/* uint32_t VertexSubPixelPrecisionSelect; */
|
||||
.UsePointWidthState = !pipeline->writes_point_size,
|
||||
.PointWidth = 1.0,
|
||||
.GlobalDepthOffsetConstant = info->depthBiasEnable,
|
||||
.GlobalDepthOffsetScale = info->depthBiasEnable,
|
||||
.GlobalDepthOffsetClamp = info->depthBiasEnable,
|
||||
};
|
||||
|
||||
GENX(3DSTATE_SF_pack)(NULL, &pipeline->gen7.sf, &sf);
|
||||
|
|
|
@ -331,15 +331,9 @@ genX(cmd_buffer_flush_state)(struct anv_cmd_buffer *cmd_buffer)
|
|||
|
||||
if (cmd_buffer->state.dirty & (ANV_CMD_DIRTY_PIPELINE |
|
||||
ANV_CMD_DIRTY_DYNAMIC_DEPTH_BIAS)){
|
||||
bool enable_bias = cmd_buffer->state.dynamic.depth_bias.bias != 0.0f ||
|
||||
cmd_buffer->state.dynamic.depth_bias.slope != 0.0f;
|
||||
|
||||
uint32_t raster_dw[GENX(3DSTATE_RASTER_length)];
|
||||
struct GENX(3DSTATE_RASTER) raster = {
|
||||
GENX(3DSTATE_RASTER_header),
|
||||
.GlobalDepthOffsetEnableSolid = enable_bias,
|
||||
.GlobalDepthOffsetEnableWireframe = enable_bias,
|
||||
.GlobalDepthOffsetEnablePoint = enable_bias,
|
||||
.GlobalDepthOffsetConstant = cmd_buffer->state.dynamic.depth_bias.bias,
|
||||
.GlobalDepthOffsetScale = cmd_buffer->state.dynamic.depth_bias.slope,
|
||||
.GlobalDepthOffsetClamp = cmd_buffer->state.dynamic.depth_bias.clamp
|
||||
|
|
|
@ -90,6 +90,9 @@ emit_rs_state(struct anv_pipeline *pipeline,
|
|||
.ViewportZFarClipTestEnable = true,
|
||||
.ViewportZNearClipTestEnable = true,
|
||||
#endif
|
||||
.GlobalDepthOffsetEnableSolid = info->depthBiasEnable,
|
||||
.GlobalDepthOffsetEnableWireframe = info->depthBiasEnable,
|
||||
.GlobalDepthOffsetEnablePoint = info->depthBiasEnable,
|
||||
};
|
||||
|
||||
GENX(3DSTATE_RASTER_pack)(NULL, pipeline->gen8.raster, &raster);
|
||||
|
|
Loading…
Reference in New Issue