summaryrefslogtreecommitdiffstats
path: root/servers/rendering/rendering_device_graph.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add debug utilities for VulkanMatias N. Goldberg2024-08-211-2/+9
| | | | | | | | | | | | | | | | | | | | | Features: - Debug-only tracking of objects by type. See get_driver_allocs_by_object_type et al. - Debug-only Breadcrumb info for debugging GPU crashes and device lost - Performance report per frame from get_perf_report - Some VMA calls had to be modified in order to insert the necessary memory callbacks Functionality marked as "debug-only" is only available in debug or dev builds. Misc fixes: - Early break optimization in RenderingDevice::uniform_set_create ============================ The work was performed by collaboration of TheForge and Google. I am merely splitting it up into smaller PRs and cleaning it up.
* Add support for enhanced barriers in D3D12.Dario2024-05-201-42/+99
| | | | | | | | Enables support for enhanced barriers if available. Gets rid of the implementation of [CROSS_FAMILY_FALLBACK] in the D3D12 driver. The logic has been reimplemented at a higher level in RenderingDevice itself. This fallback is only used if the RenderingDeviceDriver reports the API traits and the capability of sharing texture formats correctly. Aliases created in this way can only be used for sampling: never for writing. In most cases, the formats that do not support sharing do not support unordered access/storage writes in the first place.
* Add optional driver workaround to RenderingDevice for Adreno 6XX.Dario2024-05-131-26/+57
| | | | Co-authored-by: Clay John <claynjohn@gmail.com>
* Fix incorrect memory read when capacity changes in RD Graph.Dario2024-04-291-4/+5
|
* Fixes `RenderingDevice::get_driver_resource` will crash or give incorrect ↵jsjtxietian2024-04-081-3/+3
| | | | result with certain resources
* Remove tracking logic for input attachments as it's not necessary.Dario2024-02-211-9/+0
|
* Add validation to render graph for draw and compute lists.Dario2024-02-141-0/+12
|
* Finish splitting functionality of the Vulkan and D3D12 backends into ↵Dario2024-02-121-12/+17
| | | | RenderingDeviceDriver.
* Improve stage and slice tracking behavior of RenderingDeviceGraph to fix ↵Dario2024-01-261-57/+138
| | | | various synchronization issues.
* Fix memory leak from not clearing the buffer barrier vector properly on the ↵Dario2024-01-181-0/+1
| | | | render graph.
* Acyclic Command Graph for RenderingDevice.Dario2024-01-081-0/+1930
Adds a new system to automatically reorder commands, perform layout transitions and insert synchronization barriers based on the commands issued to RenderingDevice.