aboutsummaryrefslogtreecommitdiff
path: root/src/common/msg_handler.cpp
diff options
context:
space:
mode:
authorrdenno <rhysdenno@gmail.com>2026-11-02 08:42:56 -0500
committerrdenno <rhysdenno@gmail.com>2026-11-02 08:46:35 -0500
commit7ac108e2571d7cb39585c58994524131dd9d8c22 (patch)
treedc696012f06d50f0ffbe0c30fec7e88e6559ca06 /src/common/msg_handler.cpp
parent8b8d0fc85f1267dc93d069c5a331c4f24ac3a835 (diff)
shader: lower TXD with any channel mask
TXD was only lowered with all four channels (and rejected any instruction without a second destination, as RZ & 1 is set). Hyrule Warriors: Age of Imprisonment's gradient-sampling programs fetch one channel into Rd, or three channels with the third in the second destination, and were rejected ("native gradient texture mode"), so their draws were skipped. Pass the channel mask on to Maxwell TXD. The first two enabled channels go to Rd, Rd+1 and the others to the second destination; when those aren't consecutive, write to scratch and move them as the four-channel case already did. Assisted-by: Claude Opus 5.5 (diagnosis, fix and testing)
Diffstat (limited to 'src/common/msg_handler.cpp')
0 files changed, 0 insertions, 0 deletions