Closed MaikKlein closed 6 years ago
I'll probably still implement the deprecated BufferBlock variant. We can still feature gate the StorageBuffer class later.
I'd say always go with the latest spec. If anyone needs older functionality, they should use an older LTS version. That way, you keep open for future improvements, but enable people to go back to older version if needed.
I am going to support both, the change appears to be trivial. For now I am going with the deprecated version because gfx still uses an Vulkan 1.0 context. I also need to push ash to version 1.1.
Currently glslang decorates a struct with
BufferBlock
. ButBufferBlock
has been deprecated.The spec recommends to use the
StorageBuffer
storage class, but this requires the following extensionsSPV_KHR_storage_buffer_storage_class, SPV_KHR_variable_pointers
Only ~30% of the gpus support those extensions pre 1.1, but they have been made core in 1.1.
Now what should rlsl target?
BufferBlock
orStorageBuffer
or both?