diff options
| author | rdenno <rhysdenno@gmail.com> | 2026-11-02 08:42:56 -0500 |
|---|---|---|
| committer | rdenno <rhysdenno@gmail.com> | 2026-11-02 08:46:35 -0500 |
| commit | 7ac108e2571d7cb39585c58994524131dd9d8c22 (patch) | |
| tree | dc696012f06d50f0ffbe0c30fec7e88e6559ca06 /src/core/crypto/ctr_encryption_layer.cpp | |
| parent | 8b8d0fc85f1267dc93d069c5a331c4f24ac3a835 (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/core/crypto/ctr_encryption_layer.cpp')
0 files changed, 0 insertions, 0 deletions
