Now that Three.js supports WebGPU, and better yet, WebGPURenderer automatically falls back to WebGL2Renderer on unsupported platforms, it's probably about time we started migrating. Amazingly, it sort of already works! Main problems I've noticed so far are with our custom shaders:
1) custom blur shader for the generated environment. I think we can delete all this code and start using getTextureLevel instead, but that means we'll also have to transition from scene.environment to scene.environmentNode`.
2) custom shadow shader. Just rewrite this in TSL - shouldn't be too complex.
Now that Three.js supports WebGPU, and better yet,
WebGPURenderer
automatically falls back toWebGL2Renderer
on unsupported platforms, it's probably about time we started migrating. Amazingly, it sort of already works! Main problems I've noticed so far are with our custom shaders:1) custom blur shader for the generated environment. I think we can delete all this code and start using
getTextureLevel
instead, but that means we'll also have to transition fromscene.environment
to scene.environmentNode`.2) custom shadow shader. Just rewrite this in TSL - shouldn't be too complex.
We'll see how the rest goes... FYI @mrdoob.