aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/shader_cache.cpp
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2023-08-05 12:58:39 -0400
committerGitHub <noreply@github.com>2023-08-05 12:58:39 -0400
commit4533769f7f99abb8595fd0a78e714edbf9af2e57 (patch)
tree18c7814ec81d70be275c2a79200bc909c793a097 /src/video_core/shader_cache.cpp
parent00d9a9c44e201058a93c4fa11582c8a7119bdb40 (diff)
parentdfb7fc8293a528d6c8cc2abef7fac5a6a7bf2883 (diff)
Merge pull request #11212 from Kelebek1/shader_stuff
Fix various misc pipeline/shader things
Diffstat (limited to 'src/video_core/shader_cache.cpp')
-rw-r--r--src/video_core/shader_cache.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/shader_cache.cpp b/src/video_core/shader_cache.cpp
index 01701201d..e81cd031b 100644
--- a/src/video_core/shader_cache.cpp
+++ b/src/video_core/shader_cache.cpp
@@ -51,6 +51,11 @@ bool ShaderCache::RefreshStages(std::array<u64, 6>& unique_hashes) {
}
const auto& shader_config{maxwell3d->regs.pipelines[index]};
const auto program{static_cast<Tegra::Engines::Maxwell3D::Regs::ShaderType>(index)};
+ if (program == Tegra::Engines::Maxwell3D::Regs::ShaderType::Pixel &&
+ !maxwell3d->regs.rasterize_enable) {
+ unique_hashes[index] = 0;
+ continue;
+ }
const GPUVAddr shader_addr{base_addr + shader_config.offset};
const std::optional<VAddr> cpu_shader_addr{gpu_memory->GpuToCpuAddress(shader_addr)};
if (!cpu_shader_addr) {