diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-01-05 06:14:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-05 06:14:01 +0100 |
commit | e82e3e06be0b419a4d30342a44a04d79fbbfc6cb (patch) | |
tree | 03caef4f3c3a00a12cb04be128aaa65497cd0d4a | |
parent | Merge pull request #9501 from FernandoS27/yfc-rel-2 (diff) | |
parent | Vulkan: Fix drivers that don't support dynamic_state_2 up (diff) | |
download | yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.tar yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.tar.gz yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.tar.bz2 yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.tar.lz yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.tar.xz yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.tar.zst yuzu-e82e3e06be0b419a4d30342a44a04d79fbbfc6cb.zip |
-rw-r--r-- | src/video_core/renderer_vulkan/fixed_pipeline_state.cpp | 2 | ||||
-rw-r--r-- | src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp | 17 |
2 files changed, 11 insertions, 8 deletions
diff --git a/src/video_core/renderer_vulkan/fixed_pipeline_state.cpp b/src/video_core/renderer_vulkan/fixed_pipeline_state.cpp index 3d328a250..f8398b511 100644 --- a/src/video_core/renderer_vulkan/fixed_pipeline_state.cpp +++ b/src/video_core/renderer_vulkan/fixed_pipeline_state.cpp @@ -148,7 +148,7 @@ void FixedPipelineState::Refresh(Tegra::Engines::Maxwell3D& maxwell3d, DynamicFe }); } if (!extended_dynamic_state_2_extra) { - dynamic_state.Refresh2(regs, topology, extended_dynamic_state_2); + dynamic_state.Refresh2(regs, topology_, extended_dynamic_state_2); } if (!extended_dynamic_state_3_blend) { if (maxwell3d.dirty.flags[Dirty::Blending]) { diff --git a/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp b/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp index d11383bf1..734c379b9 100644 --- a/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp +++ b/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp @@ -644,12 +644,15 @@ void GraphicsPipeline::MakePipeline(VkRenderPass render_pass) { .pNext = nullptr, .flags = 0, .topology = input_assembly_topology, - .primitiveRestartEnable = dynamic.primitive_restart_enable != 0 && - ((input_assembly_topology != VK_PRIMITIVE_TOPOLOGY_PATCH_LIST && - device.IsTopologyListPrimitiveRestartSupported()) || - SupportsPrimitiveRestart(input_assembly_topology) || - (input_assembly_topology == VK_PRIMITIVE_TOPOLOGY_PATCH_LIST && - device.IsPatchListPrimitiveRestartSupported())), + .primitiveRestartEnable = + dynamic.primitive_restart_enable != 0 && + ((input_assembly_topology != VK_PRIMITIVE_TOPOLOGY_PATCH_LIST && + device.IsTopologyListPrimitiveRestartSupported()) || + SupportsPrimitiveRestart(input_assembly_topology) || + (input_assembly_topology == VK_PRIMITIVE_TOPOLOGY_PATCH_LIST && + device.IsPatchListPrimitiveRestartSupported())) + ? VK_TRUE + : VK_FALSE, }; const VkPipelineTessellationStateCreateInfo tessellation_ci{ .sType = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO, @@ -699,7 +702,7 @@ void GraphicsPipeline::MakePipeline(VkRenderPass render_pass) { .cullMode = static_cast<VkCullModeFlags>( dynamic.cull_enable ? MaxwellToVK::CullFace(dynamic.CullFace()) : VK_CULL_MODE_NONE), .frontFace = MaxwellToVK::FrontFace(dynamic.FrontFace()), - .depthBiasEnable = (dynamic.depth_bias_enable == 0 ? VK_TRUE : VK_FALSE), + .depthBiasEnable = (dynamic.depth_bias_enable != 0 ? VK_TRUE : VK_FALSE), .depthBiasConstantFactor = 0.0f, .depthBiasClamp = 0.0f, .depthBiasSlopeFactor = 0.0f, |