-
Notifications
You must be signed in to change notification settings - Fork 3k
Description
Description:
Setting a negative value for the scale mix in transform constraints causes issues where it does not function correctly within Godot projects. Positive values work fine, and setting negative values for other transform mixes like Translate did not cause problems, so this appears to be an issue specific to scale.
For the record, the skeleton animation used in the test has been confirmed to produce the expected results in SkeletonViewer.
Expected behavior:
When a negative value is set for the scale mix in transform constraints, the scale applied to the constrained bone will be the inverse of the target bone's scale change value.
Steps to reproduce:
- Download the attached .zip file: godot-negative-scale- issue.zip
This includes a spine and a Godot project. The Godot project uses Godot 4.4.1 and GDExtension. The skeleton used in this test is expected to behave as follows: when the red arrow shrinks, the blue arrow should extend. This is created using a transform constraint.

- Open the Godot project using Godot 4.4.1.
- When you play back the "test" scene, you'll see that the blue arrow controlled by the transform constraint isn't moving at all:

The version of Godot in which this problem was found:
4.4.1 (GDExtension) / Spine 4.2.43
This issue was reported in the following thread on the forum:
https://esotericsoftware.com/forum/d/29389-inversing-scale-transform-constraint-does-not-work-in-godot-runtime