gfxreconstruct icon indicating copy to clipboard operation
gfxreconstruct copied to clipboard

Handle use of AHB on Android without QueuePresent with FrameBoundary as frame

Open bradgrantham-lunarg opened this issue 10 months ago • 1 comments

In some titles on Android (Sascha's raytracing demo was reported, a Vulkan-Samples sample was reported, and a benchmarking app was reported), an AHardwareBuffer is used as the framebuffer (color attachment) and then is noted as the framebuffer in vkFrameBoundaryANDROID using a semaphore from a QueueSubmit. Presumably the Android compositor then takes that AHB and blits it to the screen or composites it, etc.

We don't handle this case in replay so we can't show anything on the screen nor take screenshots. We have https://github.com/panos-lunarg/gfxreconstruct/tree/panos_hack_is_frame_boundary to attempt to save screenshots but this is just a hack.

For this issue, treat this mode as a first-class presentation mode; make sure capture honors this mode for trim range frame numbers (probably already does because of vkFrameBoundaryANDROID) and then augment our frame processing and display in replay on Android to show the completed image and correctly save off screenshots. Stretch goal would be to get an AHB from compositor/HWUI and use that so that display is handled the same way it was in capture.

bradgrantham-lunarg avatar Apr 11 '24 17:04 bradgrantham-lunarg