You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When strands generates WGSL, it creates a binding for each uniformStorage without keeping count. If a shader uses more storage buffers than the device allows (8 per stage by default), nothing catches it in p5, you just get a WebGPU validation error in the console when the pipeline is created.
It can be easy to hit this without realizing. For example, in a vertex/fragment shader every storage buffer gets declared in both stages, and some devices allow fewer storage buffers in the vertex stage, or none at all. This is particularly problematic on mobile which users tend not to test.
Since the renderer is already available on strandsContext, strands could count the storage bindings per stage while building the shader and compare them against device.limits. If a shader goes over, it could throw a friendly error that says how many buffers it uses, what the limit is, and which uniforms are involved, etc.
Welcome! 👋 Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, please make sure to fill out the inputs in the issue forms.
Activity
welcome commentedon Oct 27, 2026
Welcome! 👋 Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, please make sure to fill out the inputs in the issue forms.
For guidance on contributing, check out our contributing guidelines and other resources for contributors.
💬 If you have questions or need support, feel free to join the Processing Foundation Forum or visit our Community page.
📜 Please also review our Code of Conduct to understand our community standards.
Thank You!
Anshumancanrock commentedon Oct 30, 2026
Hi @tychedelia , I would like to work on this one. Could you please assign this to me? Thanks!