Descriptor Heap Support
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Rust
- Sterne
- 3.4k
- Forks
- 126
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Whilst descriptor heap can be used with regular descriptor sets/bindings.
It also allows for untyped access which is much more flexible.
// VkPhysicalDeviceDescriptorHeapPropertiesEXT::bufferDescriptorSize == 16 (0x10)
layout(descriptor_heap) buffer SSBO {
vec4 payload;
} s_buffers[];
void main() {
s_buffers[6].payload = vec4(1.0);
}
https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_descriptor_heap.html
https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_untyped_pointers.html
https://github.com/KhronosGroup/SPIRV-Guide/blob/main/chapters/untyped_pointers.md
https://docs.vulkan.org/guide/latest/descriptor_heap.html#_untyped_shader_model
https://docs.vulkan.org/refpages/latest/refpages/source/VK_EXT_descriptor_heap.html
https://docs.vulkan.org/features/latest/features/proposals/VK_EXT_descriptor_heap.html
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Im Issue werden keine Repository-Dateien, Tests oder Einstiegspunkte genannt. Beginne damit, die verlinkten SPIR-V- und Vulkan-Spezifikationen zu descriptor heaps zu lesen, und ermittle dann die bestehende Unterstützung des Compilers für descriptor sets und bindings; abgeschlossen ist die Aufgabe, wenn descriptor heaps und untyped access mit entsprechender Abdeckung unterstützt werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- rust
- Bereich
- compilers
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Aktiv
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100