Browse Source

[vulkan] Fix EDS 0-2

EDS3 states were dynamic just because the driver supports them. But in EDS0-EDS2, we does not actually emit the EDS3 dynamic commands for them. So the pipeline builder skipped baking some fixed graphics state into the Vulkan pipeline, but the runtime also did not set that state dynamically. That leaves wrong Vulkan state during rendering causing rendering glitches in XC2.
EDS-Fixes
wildcard 2 days ago
parent
commit
3a1cbc5ccb
  1. 2
      src/video_core/renderer_vulkan/vk_pipeline_cache.cpp

2
src/video_core/renderer_vulkan/vk_pipeline_cache.cpp

@ -494,8 +494,10 @@ PipelineCache::PipelineCache(Tegra::MaxwellDeviceMemoryManager& device_memory_,
device.IsExtExtendedDynamicState3EnablesSupported();
dynamic_features.has_dynamic_state3_depth_clamp_enable = false;
dynamic_features.has_dynamic_state3_logic_op_enable =
dynamic_features.has_extended_dynamic_state_3_enables &&
device.SupportsDynamicState3LogicOpEnable();
dynamic_features.has_dynamic_state3_line_stipple_enable =
dynamic_features.has_extended_dynamic_state_3_enables &&
device.SupportsDynamicState3LineStippleEnable();
// VIDS: Independent toggle (not affected by dyna_state levels)

Loading…
Cancel
Save