Subject: Workaround: Scaling GPUParticles2D using a CanvasLayer

Godot Version

4.6

Question

Hi everyone,

I found a workaround for scaling GPUParticles2D without needing to dive into the ProcessMaterial (useful if you are using a shared material or a complex setup you don’t want to break).

It’s a bit of a “janky” solution and the GPUParticles2D will be always be displayed in front, but it works in a pinch:

  1. Create a CanvasLayer node.

  2. Place your GPUParticles2D as a child of that CanvasLayer.

  3. Adjust the Scale property of the CanvasLayer itself.

You can get the same result if you enable local_coords flag in the particles node.

1 Like