-
-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement Bones as Nodes that are Children of Skeleton in the Scene Hierarchy (in 3D [and maybe 2D?]) #1767
Comments
The issue with bones is that you can have a lot of them. If these were made to be actual nodes in the scene, performance would be severely decreased. Keep in mind that animated scenes are often instanced multiple times in a given scene too. Also, I think 2D bones already work this way. See also godotengine/godot#39353 and godotengine/godot#40347. |
Okay I did not look at it from the performance perspective. And I did not know how it was done in 2D. So I guess it was on made on purpose this way in 3D for performance reasons? What exactly makes Nodes slow here? Is it about memory or speed? Is the addressing/referencing a problem? I am basically asking: is there a possibility to circumvent performance problems in a different way? If people agree that this is the nicer way from the engine user's perspective I would actually be interested in investigating this as I'm interested for a while in contributing. But this is of course only worth it if people agree and also think that it's worth it at least to the level of the maintainer's time for merging it. |
This proposal was rejected by the Godot Engine core developer team when it was suggested for 3d inverse skeletal animations 3-4 months ago. I don't think anything has changed. |
Ah okay too bad I did not know that and did not find anything about it here. Was it in the dev-irc? Or is it possible to read about it somewhere else, out of curiosity? |
@jejay To address the performance, currently it seems the working approach is to:
==> Keep making proposals on Godot 3D character :-) Although we have an impressive looking option, for 4.0 and 3.3, the Bone Editor is working now and I use it on regular basis. |
Describe the project you are working on:
3D human animation and vision research
Describe the problem or limitation you are having in your project:
No easy way to manipulate/edit/handle bones. There is something I call a "path to a solution" on the way: godotengine/godot#36409 but this still does not add gizmos (see #584)
Wouldn't skeleton-bone-nodes save (have saved) a lot of re-implementing (gizmos/handles/scene tree in the inspector)?
Describe the feature / enhancement and how it helps to overcome the problem or limitation:
Once you have bones nodes, you get free handles, gizmos, etc and a nice tree view in the scene hierarchy.
Even if godotengine/godot#36409 was finished and fully functional I still think bones in the scene hierarchy are less cumbersome and fit Godot better. There is no need to hide bones away in an inspector because in Godot you use scenes for abstraction. Put your character with the skeleton in its own scene, if you never want to see the skeleton again. Also, no one who uses skeletal animations will be afraid of seeing bones, there is no need for hiding them from beginners.
Describe how your proposal will work, with code, pseudocode, mockups, and/or diagrams:
Make skeleton bones nodes and thus part of the scene hierarchy.
If this enhancement will not be used often, can it be worked around with a few lines of script?:
No.
Is there a reason why this should be core and not an add-on in the asset library?:
No.
(Edit: yeah sorry, I have no clue how it works in 2D)
The text was updated successfully, but these errors were encountered: