aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/shader_environment.cpp
diff options
context:
space:
mode:
authorTakoroka <137927095+Takoroka@users.noreply.github.com>2026-11-01 13:26:13 -0500
committerTakoroka <137927095+Takoroka@users.noreply.github.com>2026-11-01 13:26:13 -0500
commitb91817655ac7e72ae871ff668cea49da8082035e (patch)
tree956936a37a3474a84f621ae959c7dc389d47dd17 /src/video_core/shader_environment.cpp
parentf50b3e2b9d27fd6612dbc72893f6a37c06d77ed1 (diff)
parent049c9633edd9b3f7eaed6b4b3a18a4ead0cd18b7 (diff)
Merge remote-tracking branch 'origin/fix/nx2-texture-header-offset-handles' into test/linux-all-prs
Diffstat (limited to 'src/video_core/shader_environment.cpp')
-rw-r--r--src/video_core/shader_environment.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/video_core/shader_environment.cpp b/src/video_core/shader_environment.cpp
index 78438769f5..be1dfe482b 100644
--- a/src/video_core/shader_environment.cpp
+++ b/src/video_core/shader_environment.cpp
@@ -315,8 +315,9 @@ std::optional<u64> GenericEnvironment::TryFindSize() {
Tegra::Texture::TICEntry GenericEnvironment::ReadTextureInfo(GPUVAddr tic_addr, u32 tic_limit,
bool via_header_index, u32 raw) {
const auto handle{Tegra::Texture::TexturePair(raw, via_header_index)};
- ASSERT(handle.first <= tic_limit);
- const GPUVAddr descriptor_addr{tic_addr + handle.first * sizeof(Tegra::Texture::TICEntry)};
+ const u32 index{Tegra::Texture::TextureHeaderIndex(handle.first, tic_limit)};
+ ASSERT(index <= tic_limit);
+ const GPUVAddr descriptor_addr{tic_addr + index * sizeof(Tegra::Texture::TICEntry)};
Tegra::Texture::TICEntry entry;
gpu_memory->ReadBlock(descriptor_addr, &entry, sizeof(entry));
return entry;