I am developing a 2D game that heavily relies on skeletal animations using Godot's built-in Polygon2D and bone system.
Describe the problem or limitation you are having in your project
The current Polygon2D editor has several critical limitations that hinder the skeletal animation workflow:
Vertex Management:
Cannot add or remove individual vertices from existing polygons
Must redraw the entire polygon to modify vertex count
Redrawing results in disorganized polygon arrangements
Weight Painting:
No numerical input available for bone weights
Weight values are not displayed numerically in the editor
Difficult to judge weight values through color visualization alone
Unable to view weight distribution percentages when multiple bones influence a vertex (unlike tools such as Spine)
While these issues could potentially be split into multiple smaller proposals, analysis of the source code reveals that the Polygon2D editor implementation is highly coupled. Submitting a larger pull request (approximately 1000+ lines) is the best solution I could think of, though I welcome suggestions for better approaches. I understand this may increase the review burden, but I haven't found a better way to effectively implement these improvements incrementally.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
The proposed enhancements to the Polygon2D editor directly address each limitation through new functionality:
Add vertex management tools to modify existing polygons without complete redraw
Implement clean polygon redraw functionality that removes previous polygons
Add numerical input and display for weight values
Implement detailed weight visualization for vertices influenced by multiple bones
I have already implemented some of these features and provided a GIF demonstration. If this proposal is approved, I will proceed with implementing the remaining functionality.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
The implementation includes:
New UI buttons for adding/removing polygon vertices (already implemented and demonstrated in GIF)
Automatic polygon cleanup when redrawing (already implemented and demonstrated in GIF)
Weight painting improvements (to be implemented upon approval):
Numerical input field for weight brush values
Direct weight value input for selected vertices
Hover information showing weight percentages per bone
Pie chart visualization for multi-bone weight distribution (similar to Spine's approach)
If this enhancement will not be used often, can it be worked around with a few lines of script?
These enhancements will be frequently used by anyone creating skeletal animations in Godot. The limitations cannot be worked around with scripts as they involve core editor functionality. The improvements represent fundamental workflow features needed for efficient skeletal animation creation.
Is there a reason why this should be core and not an add-on in the asset library?
This must be implemented in the core editor because:
The improvements require direct modifications to the native editor functionality
The current editor API doesn't provide the necessary hooks for implementing these features as add-ons
These represent fundamental improvements to a core engine feature (skeletal animation workflow)
Describe the project you are working on
I am developing a 2D game that heavily relies on skeletal animations using Godot's built-in Polygon2D and bone system.
Describe the problem or limitation you are having in your project
The current Polygon2D editor has several critical limitations that hinder the skeletal animation workflow:
While these issues could potentially be split into multiple smaller proposals, analysis of the source code reveals that the Polygon2D editor implementation is highly coupled. Submitting a larger pull request (approximately 1000+ lines) is the best solution I could think of, though I welcome suggestions for better approaches. I understand this may increase the review burden, but I haven't found a better way to effectively implement these improvements incrementally.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
The proposed enhancements to the Polygon2D editor directly address each limitation through new functionality:
I have already implemented some of these features and provided a GIF demonstration. If this proposal is approved, I will proceed with implementing the remaining functionality.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
The implementation includes:
If this enhancement will not be used often, can it be worked around with a few lines of script?
These enhancements will be frequently used by anyone creating skeletal animations in Godot. The limitations cannot be worked around with scripts as they involve core editor functionality. The improvements represent fundamental workflow features needed for efficient skeletal animation creation.
Is there a reason why this should be core and not an add-on in the asset library?
This must be implemented in the core editor because: