AnimationTrack:AdjustSize()

Would serve as a multiplier for movements within animations. When using animations for characters bigger or smaller than the one originally used the make said animation, all the movements are amplified, like in this case:

https://devforum.roblox.com/uploads/default/original/3X/d/b/dbf91a0c1ff6dc3d20519c4c49d47bd214b475a0.gif

This player is roughly 5 times smaller than normal, yet the animation’s movements don’t match this change. If we had something like AnimationTrack:AdjustSize(), one could :AdjustSize(0.2) to fix this problem.

21 Likes

Not what he’s asking for. Re-read OP.

Bump

make this happen pls

Are you referring to the way the arms and legs move away from the rest of the body in your example?

If you are, you can make animations that do not include translations and they will correctly scale from larger to smaller characters without any additional work.

I realize that, but I still think it’d be handy to have something like this. There’s no easy way to scale animations manually.

Official humanoid scaling was added for R15 a while ago, so I feel it’s appropiate to bump this.

But then you’re losing an important feature of animations. Scaling the translations would make it easy to make one animation and have it work across all scales.

2 Likes

I’d totally support this. Was going to add a height slider to an RPG at one point but I knew my animator definitely used translations.

3 Likes

I don’t think this would be as easy as you might think. Since each part could be scaled independently and some of the joint offsets are not on part boundaries, it would be difficult to do this correctly without additional information for each joint.

I don’t see what you mean, I don’t think there has to be any extra information.
If you mean storing the current size adjustment, it doesn’t have to be for each joint.

EDIT: Do you mean storing the original pose of each joint? That isn’t necessary. AdjustSize() shouldn’t overwrite animation data, it should make the engine multiply positions when rendering the animation.

Also, perhaps it should take a Vector3 so that we can have seperate movement sizes on each axis, so that it’s possible to adjust animations for a height slider without weakening the other 2 axes.

2 Likes

Bump

They call me

Custom animation engine

Hahaaaaaaaa

Edit: Not sure why this isn’t a thing already though, shouldn’t it be easy to calculate automatically?

1 Like

I can see this being very useful: AnimationTrack:AdjustSize(0.5)

Something like if the the Torso of my model was translated 6 studs up for maybe a backflip animation, I’d be able to use this animation for the same model that is half the size using this method, & have to the Torso move only 3 studs up instead of 6 to properly play the animation.

This is me assuming that the model itself is being scaled evenly. AnimationTrack:AdjustSize(scale)
Something like AnimationTrack:AdjustSize(xScale, yScale, zScale) would be more complicated.

4 Likes