[HN Gopher] Bindless Oriented Graphics Programming
___________________________________________________________________
Bindless Oriented Graphics Programming
Author : ibobev
Score : 25 points
Date : 2026-01-07 08:44 UTC (3 days ago)
(HTM) web link (alextardif.com)
(TXT) w3m dump (alextardif.com)
| petermcneeley wrote:
| In terms of textures you could already do pseudo-bindless using
| texture arrays. However there were quite a few limitations but I
| think the two bigs ones are that this was consider to be
| conceptually one resource and the textures had to be the same
| (format size etc). I recall some engines did this kind of
| bindless for particle effects.
|
| That being said the non indexable feature feature that remains is
| the pipeline itself. Some engines have 10s of thousands of
| shaders.
| Animats wrote:
| Bindless Vulkan is in some ways simpler than binding for each
| draw. But there are now more synchronization conditions.
|
| That big table of descriptors is an unusual data object. It's
| normally mapped as writable from the CPU and readable from the
| GPU. The CPU side has to track which slots are in use. When the
| CPU is done with a texture slot, the GPU might not be done yet,
| so all deletes have to deferred until the end of the frame. This
| isn't inherently difficult but has to be designed in.
|
| The usual curse of inefficient Vulkan is maxing out the main CPU
| thread long before the GPU is fully utilized. This is fixable.
| There can be multiple draw threads. Assets can be loaded into the
| GPU while drawing is in progress, using transfer queues and DMA.
| Except that for integrated memory GPUs, you don't have to copy
| from CPU to GPU at all. If you do all this, GPU utilization
| should reach 100% before CPU utilization does.
|
| Except most of this stuff doesn't work on mobile or WebGPU yet.
| Portable code has way too many cases. Look at WGPU.
|
| What you get by using Unity or Unreal Engine is that a big team
| already worked through all this overhead. Most of the open source
| renderers aren't there yet. Or weren't as of a year ago.
| jauntywundrkind wrote:
| Fingers crossed for webgpu bindless keeping on!
| https://hackmd.io/PCwnjLyVSqmLfTRSqH0viA?view
___________________________________________________________________
(page generated 2026-01-10 23:00 UTC)