Revert "zink: don't render with multisampling when it is disabled"
This reverts commit a004825266.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22753>
This commit is contained in:
@@ -3676,9 +3676,6 @@ zink_shader_compile(struct zink_screen *screen, bool can_shobj, struct zink_shad
|
||||
if (zink_fs_key_base(key)->force_dual_color_blend && nir->info.outputs_written & BITFIELD64_BIT(FRAG_RESULT_DATA1)) {
|
||||
NIR_PASS_V(nir, lower_dual_blend);
|
||||
}
|
||||
if (zink_fs_key_base(key)->single_sample) {
|
||||
NIR_PASS_V(nir, nir_lower_single_sampled);
|
||||
}
|
||||
if (zink_fs_key_base(key)->coord_replace_bits)
|
||||
NIR_PASS_V(nir, nir_lower_texcoord_replace, zink_fs_key_base(key)->coord_replace_bits, false, false);
|
||||
if (zink_fs_key_base(key)->point_coord_yinvert)
|
||||
|
||||
@@ -658,9 +658,8 @@ zink_draw(struct pipe_context *pctx,
|
||||
VKCTX(CmdSetLineStippleEnableEXT)(batch->state->cmdbuf, rast_state->hw_state.line_stipple_enable);
|
||||
}
|
||||
if ((BATCH_CHANGED || ctx->sample_mask_changed) && screen->have_full_ds3) {
|
||||
uint8_t samples = ctx->gfx_pipeline_state.multisample ? ctx->gfx_pipeline_state.rast_samples + 1 : 1;
|
||||
VKCTX(CmdSetRasterizationSamplesEXT)(batch->state->cmdbuf, (VkSampleCountFlagBits)(samples));
|
||||
VKCTX(CmdSetSampleMaskEXT)(batch->state->cmdbuf, (VkSampleCountFlagBits)(samples), &ctx->gfx_pipeline_state.sample_mask);
|
||||
VKCTX(CmdSetRasterizationSamplesEXT)(batch->state->cmdbuf, (VkSampleCountFlagBits)(ctx->gfx_pipeline_state.rast_samples + 1));
|
||||
VKCTX(CmdSetSampleMaskEXT)(batch->state->cmdbuf, (VkSampleCountFlagBits)(ctx->gfx_pipeline_state.rast_samples + 1), &ctx->gfx_pipeline_state.sample_mask);
|
||||
ctx->sample_mask_changed = false;
|
||||
}
|
||||
if ((BATCH_CHANGED || ctx->blend_state_changed) && screen->have_full_ds3) {
|
||||
|
||||
@@ -116,7 +116,7 @@ zink_create_gfx_pipeline(struct zink_screen *screen,
|
||||
|
||||
VkPipelineMultisampleStateCreateInfo ms_state = {0};
|
||||
ms_state.sType = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO;
|
||||
ms_state.rasterizationSamples = state->multisample ? state->rast_samples + 1 : 1;
|
||||
ms_state.rasterizationSamples = state->rast_samples + 1;
|
||||
if (state->blend_state) {
|
||||
ms_state.alphaToCoverageEnable = state->blend_state->alpha_to_coverage;
|
||||
if (state->blend_state->alpha_to_one && !screen->info.feats.features.alphaToOne) {
|
||||
@@ -520,7 +520,7 @@ zink_create_gfx_pipeline_output(struct zink_screen *screen, struct zink_gfx_pipe
|
||||
}
|
||||
ms_state.alphaToOneEnable = state->blend_state->alpha_to_one;
|
||||
}
|
||||
ms_state.rasterizationSamples = state->multisample ? state->rast_samples + 1 : 1;
|
||||
ms_state.rasterizationSamples = state->rast_samples + 1;
|
||||
/* "If pSampleMask is NULL, it is treated as if the mask has all bits set to 1."
|
||||
* - Chapter 27. Rasterization
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user