mirror of
https://github.com/bkaradzic/bgfx.git
synced 2026-02-21 14:23:02 +01:00
Vulkan: occlusion queries, housekeeping - attempt 2 (#2506)
* Cleanup * Request host-cached memory for readback * Request device-visible memory for the uniform buffer * Use more fine-grained image memory barrier stages * Don't rebind vertex and index buffers if not necessary * Timer queries * Don't transition images during a renderpass * Cache descriptor sets * Trigger RenderDoc capture if requested * Fix invalid command buffer after surface recreation * Perform clear and blit before compute * Use init.debug to enable validation layers ...instead of always enabling them in debug config * Only resolve framebuffer once * Report number of primitives without index buffer * Minimize state changes * Occlusion queries * Transition swapchain image from undefined layout * Make sure we have a combined graphics and compute queue family Existing code already makes that assumption, otherwise we'd need different command queues and explicit resource queue transitions. The spec also guarantees that a device with such a queue family should exist. * Release cached image views on texture destruction * Fix stencil-only clear * Fix non-zero integer format clear * Annotate all optional functions with their extensions * Support for BGFX_SAMPLER_SAMPLE_STENCIL * Remove unused extension functions * Support for BGFX_SAMPLER_BORDER_COLOR * Undo descriptor set cache Try this again in another PR... the hashing doesn't quite work with some bind combinations, and the cache needs a better eviction strategy * Don't start renderpass for empty draw calls * Advertize graphics debugger, if present ie. RenderDoc * Cleanup * Only enable required features and extensions * Don't spam warning about swapchain format fallback * Cleanup
This commit is contained in:
1788
src/renderer_vk.cpp
1788
src/renderer_vk.cpp
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user