Skip to content

Improve descriptor management. #162

@crud89

Description

@crud89

Describe your problem

The current descriptor management process is somewhat tedious and exhibits several pitfalls, especially when trying to implement bind-less renderers.

Describe your proposed solution

The first major improvement involves replacing the default descriptor management in Vulkan with VK_EXT_descriptor_buffer. This allows to provide a unified descriptor management architecture for both backends and hopefully reduces maintenance effort in the future. Furthermore, it should also remove any heuristic assumptions regarding descriptor pools and their sizes and make descriptor management more efficient.

Next, we should attempt to implement direct resource heap access as provided by SM 6.6 dynamic resources. In Vulkan, this can be done using VK_EXT_mutable_descriptor_type. A sample and test for this would be nice.

The above should also enable us to provide a less restrictive way for external libraries to allocate descriptors, as already described in #155.

Metadata

Metadata

Assignees

Labels

DX12 ❎The issue involves the DX12 backend.FeatureNew feature or request.Vulkan 🌋The issue involves the Vulkan backend.

Projects

Status

v0.5.1

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions