Hi Kentaro,
That limitation is not needed anymore. Currently, we are using RWByteAddressBuffer instead of RWStructuredBuffer to implement SSBO. Whether you can use SSBO in vertex shader depends on the value of MAX_VERTEX_SHADER_STORAGE_BLOCKS. If your hardware at most supports d3d feature level 11.0, MAX_VERTEX_SHADER_STORAGE_BLOCKS will be 0 when you query. It means that you can’t use it in vertex shader. Otherwise, you can use it.
However, currently, SSBO is only supported in compute shader on d3d backend. If you want to test it in vertex/fragment shader, you have to try it on gl backend.
Regards,
Jiajia
--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
webgl-dev-lis...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-d...@googlegroups.com.
The webgl2-compute spec is based on OpenGL ES 31 spec with extra limitations. So you can check opengl es 31 spec, table 20.45, the minimum value of MAX_COMPUTE_SHADER_STORAGE_BLOCKS is 4. So you can use at least 4 blocks in compute shader in any device. But the minimum value of MAX_VERTEX_SHADER_STORAGE_BLOCKS and MAX_FRAGMENT_SHADER_STORAGE_BLOCKS are 0 which means they may be not supported in vertex/fragment shader in some devices.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.