• 3D
  • Character size indepedent animation

Hey guys, is there a way to process/create animations in such a way in GODOT that the height/scale of the character doesn't matter (like a character composed in a character creator)?

If you are using sprite animations, then typically the width/height of each frame needs to be the same. If you use an animated sprite, you can import individual frames and sequence them in the editor. Each animation itself (like walk, jump, etc.) still needs a fixed size of width/height, but it can vary for each animation (e.g. the walk cycle can have different dimensions than the run cycle). Is that what you are asking?

@cybereality said: If you are using sprite animations, then typically the width/height of each frame needs to be the same. If you use an animated sprite, you can import individual frames and sequence them in the editor. Each animation itself (like walk, jump, etc.) still needs a fixed size of width/height, but it can vary for each animation (e.g. the walk cycle can have different dimensions than the run cycle). Is that what you are asking?

No, this was more about 3D animations/rigs done with Blender.

Currently there isn't a way to share animations in Godot from Skeleton to Skeleton easily. I believe it is possible, but from what I remember reading about it, it's rather involved. In Godot 4.0 I believe there are plans to allow Skeleton retargetting, which should make this much easier, but unfortunately I do not think there is any similar solution for Godot 3.X.

The only way I can think of it right now in Godot to support different heights is to have a Skeleton with all the animations, and then scale it on the Y axis to make it shorter or taller. Then you could use something like the BoneAttachment nodes to have each MeshInstance follow a bone's position and rotation, but not it's scale. You'd need a custom BoneAttachment node though, as the built-in BoneAttachment node requires being a child of a Skeleton node to function.

I've seen a video, so it can be done, but I'm not sure how they did it.

@TwistedTwigleg said: Currently there isn't a way to share animations in Godot from Skeleton to Skeleton easily. I believe it is possible, but from what I remember reading about it, it's rather involved. In Godot 4.0 I believe there are plans to allow Skeleton retargetting, which should make this much easier, but unfortunately I do not think there is any similar solution for Godot 3.X.

The only way I can think of it right now in Godot to support different heights is to have a Skeleton with all the animations, and then scale it on the Y axis to make it shorter or taller. Then you could use something like the BoneAttachment nodes to have each MeshInstance follow a bone's position and rotation, but not it's scale. You'd need a custom BoneAttachment node though, as the built-in BoneAttachment node requires being a child of a Skeleton node to function.

Heard anything about a release date or so? Especially after they got that sweet Facebook/Meta donation?

I haven't heard anything yet, official or otherwise. I know that in the near-ish future there is plans for the first official alpha, but nothing on the release itself.

Based on the timeline that Godot 2.X to Godot 3.0 took, it probably is about a half year to a full year before Godot 4.0 stable is released, if I had to guess. Given how much has changed with Godot 4.0 though, it may be longer simply because of how massive the release is.