Descriptor set
Een bundel resourcehandles (buffers, textures, samplers) die een shader gebruikt en die in één keer aan de pipeline wordt gebonden in plaats van resource voor resource.
Een shader leest een texture nooit rechtstreeks, maar via een descriptor: een kleine handle die de resource aanwijst en aangeeft hoe die moet worden geïnterpreteerd. Vulkan (2016) groepeert descriptors in sets op basis van hoe vaak ze veranderen (één voor het hele frame, één per materiaal, één per object), zodat de engine alleen opnieuw bindt wat echt verandert. Direct3D 12 lost hetzelfde probleem op met descriptor heaps en root signatures.
De indeling wordt vooraf vastgelegd in de root signature van de pipeline, waardoor de driver niet bij elke draw call de bindings hoeft te valideren. Nieuwere hardware gaat nog verder richting bindless: de shader indexeert dan vrij in één enorme tabel en de grenzen tussen descriptor sets vervagen vrijwel volledig.