Point size is not supported in WebGPU, so you should not set
gl_PointSize: points are always 1 pixel sized.
color attributes are automatically injected so you should not pass them through the
attributes parameter of the
Lastly, the z coordinate in NDC space is in the 0…1 range in WebGPU, not -1…1. So you must update the vertex coordinates you pass to the shader.
Here’s an updated PG that works both in WebGPU and WebGL: