You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
AGC: native 4-sample D32 depth sampled with HTILE but without ITERATE_256 is refused (Onimusha: Way of the Sword, PPSA27836) #6362
Onimusha: Way of the Sword (PPSA27836) samples a native 4-sample depth target whose HTILE isn't ITERATE_256, and stops on the new game's first scene load. No open PR covers this case. #6300, #6297, #5554 and #5627 all assume ITERATE_256.
I added a local print of the target in prepareDepthSampling (DepthSurface.cpp):
field
value
format
VK_FORMAT_D32_SFLOAT (126)
samples
4
extent
128x64
HTILE address
0x2000c10000 (non-zero, 256-byte aligned)
iterate256
0
htilePipeAligned
1
htileVrsEncoding
0
So the target passes every other check before this one: format, sample count, Z_X single slice, XOR, base alignment, no stencil. Only ITERATE_256 is off.
Where: after New Game, difficulty and control-style selection, during the first scene load. It happens every run.
Host import: this refusal only shows with APS5_NO_HOST_IMPORT=1. With host imports on, the same load ends earlier, at the same point after the save, in VK_ERROR_DEVICE_LOST. NVIDIA device fault reports read invalid at 0x4840000, the same address every run. The last GPU checkpoint is an 8x8 compute program that samples two 2D textures and writes a 16x16x8 3D storage image. I'm still narrowing that one down. It isn't changed by any of these:
How HTILE is laid out without ITERATE_256 isn't settled here, so I haven't guessed an implementation. If someone has the layout, or a hardware measurement of it, I can test a change on this title right away.
Fix in #6557: the initial import no longer requires ITERATE_256, because it reads no compressed Z planes and the HTILE clear words and footprint do not depend on it (sources in the PR). Tested on Onimusha (PPSA27836) with APS5_NO_HOST_IMPORT=1 on Windows 11, RTX 5070 and AMD gfx1036: the load passes this point and stops at the next refusal, sample-preserving guest publication of native multisample depth is not implemented.
Activity
simonbronk commentedon Oct 15, 2026
The device loss with host imports on, mentioned above, now has its own issue with the data: #6374.
simonbronk commentedon Oct 15, 2026
Fix in #6557: the initial import no longer requires ITERATE_256, because it reads no compressed Z planes and the HTILE clear words and footprint do not depend on it (sources in the PR). Tested on Onimusha (PPSA27836) with
APS5_NO_HOST_IMPORT=1on Windows 11, RTX 5070 and AMD gfx1036: the load passes this point and stops at the next refusal,sample-preserving guest publication of native multisample depth is not implemented.