Skip to content

Conversation

@RandomShaper
Copy link
Member

@RandomShaper RandomShaper commented Dec 19, 2025

I found the need for this when I realized derived scenes of one containing an AnimationPlayer were getting the blend times array duplicated on save.

Something like this: blend_times = [ "cast", "stopped_caster", 0.3, "dodge", "stopped", 0.3, "dodge", "walk", 0.3, [...]

Due to the 0.3 being processed differently for some reason in different places, the numeric imprecission would end up causing a comparison between something like 0.300001 and 2.999999.

It may be good to hunt down the exact cause for the difference. However, since we are already applying loose comparison for cases like these, I've just extended the approximate comparison framework to work exhaustively.

It would be great to forward-port this to 4.x, but the codebase differs too much and it would require separate study.


This PR is proudly donated by Pedrocorp.

@RandomShaper RandomShaper force-pushed the avoid_redundant_values_3.x branch from 950e9a5 to cfdf290 Compare December 20, 2025 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant