godotengine / godot

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

Particles from GPUParticles3D with rigid collision sporadically turn when velocity has fully dampened #95715

Open RobTheFiveNine opened 3 months ago

RobTheFiveNine commented 3 months ago

Tested versions

System information

Godot v4.3.stable - Ubuntu 24.04 LTS 24.04 - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3070 Ti (nvidia; 535.183.01) - 12th Gen Intel(R) Core(TM) i9-12900F (24 Threads)

Issue description

When particles from a GPUParticles3D are colliding with a GPUParticlesCollisionBox3D with the mode set to Rigid, when they eventually come to a halt, they will sporadically begin to rotate (which also sometimes results in a shimmer effect if it seems to struggle to rotate on the spot).

It has only began to occur since 4.3, the same particle material has been OK in all 4.x releases so far (if I am correct).

An example containing a few iterations of the particle emitter can be seen below:

https://github.com/user-attachments/assets/456ecae1-5e50-4d09-8c5f-8121f3ae4b5e

Steps to reproduce

Open the MRP and wait until the particles come to a halt and you should see them begin to rotate on the spot without any movement along the collider

Minimal reproduction project (MRP)

godot-particle-shimmer-mrp.zip

matheusmdx commented 3 months ago

I tried the mrp but i can't reproduce the issue

https://github.com/user-attachments/assets/b66fb885-c61b-4078-a968-7ad2c32ff8a7


Godot v4.3.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated AMD Radeon RX 580 2048SP (Advanced Micro Devices, Inc.; 31.0.21916.2) - AMD Ryzen 5 3600 6-Core Processor (12 Threads)

RobTheFiveNine commented 3 months ago

I tried the mrp but i can't reproduce the issue

unknown_2024.08.19-12.11_1.mp4

Godot v4.3.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated AMD Radeon RX 580 2048SP (Advanced Micro Devices, Inc.; 31.0.21916.2) - AMD Ryzen 5 3600 6-Core Processor (12 Threads)

@matheusmdx strange - I do have a macOS and Windows system available (albeit not right now), I'll try on them both once I can and see if the issue is isolated to Linux

RobTheFiveNine commented 3 months ago

@matheusmdx sorry for not getting back to this quicker; health problems getting the better of me.

I haven't tested on macOS, but I did give it a try in Windows, and still get the same issue in WIndows (see example below).

https://github.com/user-attachments/assets/55b34b93-0ba2-48a0-b2c2-013eada47f3f

I wonder if it is maybe NVIDIA specific?

matheusmdx commented 3 months ago

I wonder if it is maybe NVIDIA specific?

For now is the only thing we have different, we'll need to wait more people test

Calinou commented 3 months ago

I can confirm this on 4.3.stable on all rendering methods. The issue occurs regardless of the particle's Fixed FPS property - the sporadic rotation happens faster at higher FPS.

PC specifications - **CPU:** Intel Core i9-13900K - **GPU:** NVIDIA GeForce RTX 4090 (driver 560.94) - **RAM:** 64 GB (2×32 GB DDR5-5800 C30) - **SSD:** Solidigm P44 Pro 2 TB - **OS:** Windows 11 23H2