diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-02-21 04:28:45 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-02-28 21:56:43 +0100 |
commit | a33870996b00f18179048debf183f1cb5c499593 (patch) | |
tree | 3e8a09ed40a4713086b15117b3022965923a51fb /src/video_core/renderer_vulkan/vk_state_tracker.cpp | |
parent | vk_state_tracker: Implement dirty flags for scissors (diff) | |
download | yuzu-a33870996b00f18179048debf183f1cb5c499593.tar yuzu-a33870996b00f18179048debf183f1cb5c499593.tar.gz yuzu-a33870996b00f18179048debf183f1cb5c499593.tar.bz2 yuzu-a33870996b00f18179048debf183f1cb5c499593.tar.lz yuzu-a33870996b00f18179048debf183f1cb5c499593.tar.xz yuzu-a33870996b00f18179048debf183f1cb5c499593.tar.zst yuzu-a33870996b00f18179048debf183f1cb5c499593.zip |
Diffstat (limited to 'src/video_core/renderer_vulkan/vk_state_tracker.cpp')
-rw-r--r-- | src/video_core/renderer_vulkan/vk_state_tracker.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/renderer_vulkan/vk_state_tracker.cpp b/src/video_core/renderer_vulkan/vk_state_tracker.cpp index 0e00a9079..c75caaa56 100644 --- a/src/video_core/renderer_vulkan/vk_state_tracker.cpp +++ b/src/video_core/renderer_vulkan/vk_state_tracker.cpp @@ -30,6 +30,7 @@ Flags MakeInvalidationFlags() { Flags flags{}; flags[Viewports] = true; flags[Scissors] = true; + flags[DepthBias] = true; return flags; } @@ -76,6 +77,13 @@ void SetupDirtyScissors(Tables& tables) { FillBlock(tables[0], OFF(scissor_test), NUM(scissor_test), Scissors); } +void SetupDirtyDepthBias(Tables& tables) { + auto& table = tables[0]; + table[OFF(polygon_offset_units)] = DepthBias; + table[OFF(polygon_offset_clamp)] = DepthBias; + table[OFF(polygon_offset_factor)] = DepthBias; +} + } // Anonymous namespace StateTracker::StateTracker(Core::System& system) @@ -87,6 +95,7 @@ void StateTracker::Initialize() { SetupDirtyRenderTargets(tables); SetupDirtyViewports(tables); SetupDirtyScissors(tables); + SetupDirtyDepthBias(tables); auto& store = dirty.on_write_stores; store[RenderTargets] = true; |