How to spin or rotate particles over time (GPUParticles3D)

Godot Version

v4.2.stable.official [46dc27791]

Question

I’m using the new particle system - and I’m trying to make my particles spin. In this case it’s snowflakes (using a quadmesh) that should slightly rotate over time. I can’t find an option that allows this.

There’s an angle property under spawn - I would assume that’s the initial rotation, but even that has seemingly no effect. I see no other option like “spin” or “rotate”.

Here’s a screenshot with huge flakes to illustrate what this is about.

To whine a bit: Even though I used particle systems before, most of the terms and descriptions/tooltips of this one seem too obtuse to find what I need.

I think you would find CPUParticles3D behave the way you would expect them to. GPUParticles need a little bit more, because they’re rotated via their shader/material. Firstly, there are some ParticleProcessMaterial settings you’ll want.

Spawn Angle is just the angle they start with, which is good for variation.
Angular Velocity is what gets them to spin.

Next, you need a material which allows them to spin properly. You can do this with the StandardMaterial applied to the Mesh assigned in your draw pass. Set Billboard Mode to “Particle Billboard”. This will obviously billboard them to the camera, but will also allow the meshes to rotate around the vector facing the camera. You should then see your particles spinning.

3 Likes

What you are looking for is Angular Velocity in the Animated Velocity section (the location of some properties changed in Godot 4.2). Check out my video about creating a snow effect with snowflake particles.

Thank you - that was the crucial part! Originally I’ve had Z-Billboarding enabled on in the GPUParticles3D settings under Drawing > Transform Align. But that doesn’t allow rotation.

When I went into the material and activated Particle Billboard under Billboard. Then all rotations showed up.

CPUParticles3D behaves exactly the same. Spin only works with the texture billboard settings. I assume they’re very similar, because I’ve read the CPUParticles3D is basically an updated version of that one - and will replace it eventually.

Thanks. Perfect tutorial to my case :slight_smile: - it also has the part with the Billboard settings in the Material.

2 Likes

Nice. :sunglasses: Glad to help.

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.