Cannot land correctly on platforms that move up and down

I am testing an object that changes color based on whether it is grounded (when moving downward on a platform) or airborne (when not grounded).

It seems that landing on a platform moving upward results in an airborne判定. The platform is constructed as shown in the screenshots. If there are any specific instructions on how the platform should be built, please let me know.


https://xgf.nu/mmRG7

Thank you for the report.

It seems likely that the wall collision size is too thin, causing the object to penetrate during upward movement, which may allow the contact normal to slip through.

Could you please try increasing the wall collision thickness and check if the issue persists? If it still occurs, could you share the project with us?

Here it is

https://1.gigafile.nu/1015-m161332e08251b68ce82ffe6dc752472d

1 Like

I have confirmed the situation and will report it to the development team.

We have adjusted the judgment in version 1.1.3, which is being released today.

Hmm, it still occurs when the speed scale is 1.2 or higher, so is this the compromise point…?

It seems that even with the speed scale set to 1.5 in the project you provided, the issue did not occur…

Have you made any configuration changes?

Ah, I see. The issue occurs when the monitor’s FPS is set to 144 FPS, for example.

I will confirm with the development team, but this might be an issue due to Godot’s specifications…

This is because Godot’s physics processing (physics_process) is always handled at 60 FPS (a similar approach is used in Unity, etc.).

On the other hand, the update of AnimationPlayer is not fixed at 60 FPS. Under normal processing timing, this is not an issue, but when the speed scale is changed, it seems the number of processing cycles simply increases, causing a synchronization mismatch. (For example, with a speed scale of 1.2, processing occurs 72 times per second, while physics processing occurs only 60 times, leading to a mismatch.)

Therefore, since the issue likely stems from the speed scale side, I believe the problem can be avoided by adjusting the animation length on the AnimationPlayer side.

Based on our review here, it seems impossible even outside of speed scaling. It appears more realistic to keep the speed within a certain range.

For anyone else experiencing the same issue, it seems that the Actus Information Bureau is also researching the problem.

1 Like