AnyPS5/core/libs/prx/libSceAgcDriver/Graphics
Dean Galvin edb1358117 fix(agc): bind a 2D storage access to a 2D array surface as its first layer
A compute shader addressing an image with MIMG DIM 2D over a T# of type 2D
array was refused ("guest storage texture dimension disagrees with the
shader's declared image shape"). Such an access carries no slice
coordinate, so the hardware reads and writes slice 0 of the resource view,
which is the BASE_ARRAY layer of the surface.

The storage element is now bound through a 2D view of that layer of the
surface's shared storage image (StorageTexture::FirstLayerView, created on
demand per mip and released with the image). Every other shape/dimension
mismatch still throws, and both mismatch messages now name the shape and
the dimension.

The recorder test device sets formatProperties, which storage images need
to pick their Vulkan format.
2026-10-01 10:23:36 +03:00
..
include fix(agc): bind a 2D storage access to a 2D array surface as its first layer 2026-10-01 10:23:36 +03:00
shaders perf(agc): dispatch and draw recipes, data-only cache hits, unit shadows, bindless image tables 2026-09-26 19:00:40 -07:00
src fix(agc): bind a 2D storage access to a 2D array surface as its first layer 2026-10-01 10:23:36 +03:00