Home Unity

Help with Unity 2D Skeletal Animation

Hey, I'm relatively new to Unity, as a whole, and I've been looking into its 2D Skeletal Animation tools. Out of the ones I've researched, mainly Anima2D and the preview 2D Animation package, I can't seem to find the proper answers/documentation to what I want to know. I'm not exactly sure how to best explain my questions but I will try and provide references to further exemplify. I'm just looking for clarification. I'm sorry if this all seems a little disjointed, confusing or over-complicated; my naivety and lack of experience on the subject is more than likely what's holding me back.


The animation system I'd intended to implement is similar to that of Rayman Legends'; a sprite atlas with all the various pieces set and rigged individually, to be mixed and put together in order to make an animation. One issue I've had is, and I don't know if this is certain, you need to keep the sprites as children of the game object? Otherwise, you can't play your animation because objects are missing. Is this correct?


I want to know if there is a way to, or it is already automatically done and I'm just not aware, to store that data in the animation file; so as to only call the pieces relevant to that particular animation, similarly to a traditional frame-by-frame sprite animation, as opposed to them all being part of the game object running said animation already.


I don't aim to have just one single bone rig be used for a character's entire list of animations; like a 3D model would. Some animations might use more bones than others, some might not need as many. Using the exact same rig and pieces of the sprite for every animation is not at all what I'm looking for. Like I said, I want to pull different pieces from a big pool of images. Though, at the same time, tutorials about these tools that I've seen, don't demonstrate such a feature, if there is one. But there not being one just seems odd, to me.


In short, what I'd like to know is:

- Is it possible to bind bones to individual sprite meshes and call on these rigs only when the animation is played, independently from the game object?

- Is it possible to swap, add or remove pieces of a sprite in the middle of an animation?

- Am I required to set a permanent rig for the game object intended to play several different animations or am I able to have several individual ones and use only the ones pertaining to a certain animation?

- Do either of the aforementioned tools allow me to do any of this?


Any and all feedback would be appreciated, and let me know of anything I might have misunderstood on the subject. Thanks in advance!


Here is the link to a video explaining Rayman's animation process within their engine:

https://youtu.be/y-chi097uV4?t=32s

Sign In or Register to comment.