Skip to content

Rendering into a packed mip tail without a resident image aborts (Wobbly Life PPSA29413) #4070

Closed

Description

@exefer

What

While streaming tutorial content, a draw renders into a packed mip tail of a surface that took the non-resident target path, and the fallback has no tail handling:

[src/Texture.cpp:260 Texture]   mip 64x64 tiled=0x0+0x10000 linear=0x160000+0x8000 blocksPerRow=1 pitch=512 tail=1
[src/Texture.cpp:260 Texture]   mip 32x32 tiled=0x0+0x10000 linear=0x168000+0x4000 blocksPerRow=1 pitch=512 tail=1
[src/Texture.cpp:260 Texture]   mip 16x16 tiled=0x0+0x10000 linear=0x16c000+0x2000 blocksPerRow=1 pitch=512 tail=1
[src/Texture.cpp:260 Texture]   mip 8x8 tiled=0x0+0x10000 linear=0x16e000+0x1000 blocksPerRow=1 pitch=512 tail=1
[src/Texture.cpp:260 Texture]   mip 4x4 tiled=0x0+0x10000 linear=0x16f000+0x800 blocksPerRow=1 pitch=512 tail=1
[src/Texture.cpp:260 Texture]   mip 2x2 tiled=0x0+0x10000 linear=0x16f800+0x400 blocksPerRow=1 pitch=512 tail=1
[src/Texture.cpp:260 Texture]   mip 1x1 tiled=0x0+0x10000 linear=0x16fc00+0x200 blocksPerRow=1 pitch=512 tail=1
[gpu] color target 0x281490000 stays non-resident: AGC graphics: storage image access to depth/stencil surface 0x281490000 is not implemented
[videoout] presentation failed: AGC graphics: rendering into a packed mip tail needs the resident image of its surface
terminate called after throwing an instance of 'std::runtime_error'
  what():  AGC graphics: rendering into a packed mip tail needs the resident image of its surface

Reading of the log: the resident-image route is skipped because storage-image access to a depth/stencil surface is not implemented, so the target stays non-resident; the staging fallback (Draw.cpp) then throws on the packed tail. Its two neighbors (3D targets and XOR array slices, same file) are the same class of gap: exotic layouts are only supported through the resident path.

Repro

Wobbly Life (PPSA29413, Unity 2022.3) on Linux (CachyOS), GCC 16.2.1, Intel i5-12400 + NVIDIA RTX 3060 Ti (615.71.09), current main 31bf997, stock build plus relink. Boot the title into the tutorial area. Flaky: 2 of 5 consecutive runs stop here (675-697 file opens in); the other 3 stop at the sample-locations wall (#2169) in the same area. No select, MSAA-8x, device-loss, or Guid failures in any run. Bring-up thread: #2211.

Already in tree, not covering it

AI-assisted: yes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions