godotengine/godot

GPUParticles2D `finished` signal isn't affected by `speed_scale`

已關閉

#119,675 建立於 2026年5月22日

 (2 則留言) (0 個反應) (0 位負責人)C++ (25,320 個分叉)batch import
buggood first issueneeds testingtopic:particles

倉庫指標

星標
 (110,708 顆星)
PR 合併指標
 (平均合併 78天 14小時) (30 天內合併 350 個 PR)

描述

Tested versions

v4.7.beta1.official [1c8cc9e7e]

System information

Godot v4.7.beta1 - Windows 10 (build 19045) - Multi-window, 2 monitors - Direct3D 12 (Forward+) - dedicated NVIDIA GeForce GTX 1060 6GB (NVIDIA; 32.0.15.8157) - AMD Ryzen 7 2700X Eight-Core Processor (16 threads) - 15.94 Gio memory - WASAPI (48000 Hz, Stereo/mono)

Issue description

Changing the speed_scale of a GPUParticles2D doesn't affect the timing of the finished signal. So, if the speed_scale is set to 0.5, the signal will be emitted in the middle of the effect.

I don't know if this is intentional behavior, and I imagine it's complicated to track the speed_scale in real time. I'm wondering if the initial speed_scale could be used when calculating the duration?

Steps to reproduce

N/A

Minimal reproduction project (MRP)

particle-finished-signal.zip

貢獻者指南