WebGL multiple passes

My long term goal here is to use the WebGL for gamestate calculations and not rendering. The problem is, I would require to do multiple rendering passes for this to work (like implementing bloom effect, where you need output from previous pass to calculate the next). For this I’d need to render to and switch between frame buffers.
So something like this: https://webglfundamentals.org/webgl/lessons/webgl-image-processing-continued.html

Is something like this supported in Phaser and where do I look?

In Phaser 3, all rendering goes through a WebGL Pipeline. The default pipeline, called the Texture Tint Pipeline, directly renders to the canvas. You can, however, make a custom pipeline that applies any effect you want. Unfortunately, this requires some knowledge of Phaser’s internals, but it shouldn’t be difficult to figure out if you know your way around WebGL and JavaScript.

If you want something to base your code on, bitmap masks are internally implemented with the Bitmap Mask Pipeline, which renders to a separate framebuffer to apply the mask’s effect.

Note that Phaser 3.25, which is currently in development at the time of writing, introduces quite a few changes to the pipeline internals to support multi-texture rendering. Unless you’re planning to stay on a particular Phaser version, such as the current 3.24, you should be careful with the APIs you use.

Thank you! I guess I’ll put this on hold for a bit to see what changes the 3.25 brings.