godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
90.83k stars 21.14k forks source link

Disable Z with world-coord particles causes particle to be clamped to z=0 #78473

Open QbieShay opened 1 year ago

QbieShay commented 1 year ago

Godot version

3.x custom, 4.0

System information

Fedora, RX 590

Issue description

Affects equally 3.x and 4.x

When spawning particles with local coord off, disable Z causes the particles to always live on the global X axis. I can't see a usecase where this makes sense, so I'm reporting it as an issue. This is most likely the consequence of flags that are not supposed to be used together, but currently disable_z is the only way to rotate a particle around the Z axis instead of Y axis, which is what i was using it for

https://github.com/godotengine/godot/assets/7917475/b182e230-64bc-474c-9029-784518b07064

I fully expect this issue to be promoted to a proposal on how to solve it, since i don't see a one size fits all solution. I Imagine we'll end up with separating rotation axis from simulation axis position lock or something similar.

Steps to reproduce

Download MRP, grab the particle node and move it around.

Minimal reproduction project

3.x: DisableZBug.zip

4.1: DisableZBug.zip

QbieShay commented 1 year ago

Would be addressed by https://github.com/godotengine/godot-proposals/issues/7634