So in the manual: https://rainyrizzle.github.io/en/AdvancedManual/AD_SyncBonesToChangeCostumes.html, the animations are in the base/main character. 1. What if the costume bones also has some movements for the same animation? For example, base character has Walk animation. For costume 1 (hair) walk animation, lets say the hair moves (assuming we dont have jiggle bones). Where should it be animated? 2. Then, in the manual, the animations are made beforehand in the main character. Then we duplicate that for the costumes. Let's say I've already created more than 10 costumes. What if I want to add another animation? I'm guessing you'll add it to the main character. But this animation wont be in the costumes. What's the proper workflow for this? Thank you.
top of page
bottom of page
Hi!
The "Synchronize" function can specify its target.
You can decide whether to synchronize "Animation, Control Parameter, Root Unit, Bone" respectively.
If the "Cloth" object and the "Body" object have the same animation, it is possible to play the animation in synchronization.
At this time, if you synchronize the Bones together, the "Unsynchronized Bones" of the "Cloth" will move according to their own animation.
You can also read this manual.
https://rainyrizzle.github.io/en/AdvancedManual/AD_SynchronizeWithOthers.html
The second question is also related to the need for the "Bone Synchronization" feature.
The "Bone Synchronization" feature was implemented so that the attached "Cloths" do not have animations, and only the main "Body" has animations.
Of course, as explained in the first answer, you can synchronize animations or control parameters at the same time as the Bone Synchronization, so you are free to create it in any way you want.
However, if you do this, the advantage of "Bone Synchronization" disappears.
So, in such cases, the following approaches are usually considered.
Method 1)
If it is not a special costume or equipment, add the bones to the "Body" in advance considering the costume to be attached.
For example, if the character is going to wear a "Hat", add the bones related to the "Hat" to the "Body" in advance and include them in the animation.
Then, there is no need to create a separate animation when the "Hat" is synchronized.
Method 2)
Use "Jiggle Bone" actively.
When clothing or equipment has separate motion, it is usually a physical movement.
In this case, work efficiency increases simply by applying "Jiggle Bone" to the bones of "Cloth" without creating a separate animation.
If not for the above method, as you were concerned, "Cloth" should have the same animation as "Body".
You can reduce the hassle a bit by utilizing the ability to export and import animations.
https://rainyrizzle.github.io/en/AdvancedManual/AD_ExportImportAnimation.html
The process of doing both "Bone Sync" and "Animation Sync" at the same time can be a bit confusing to explain in text alone, so we've put it together as follows.
We hope it helps you.
This is the main "Body" character.
It is a simple character with a head, hands, and body, and has "Idle" animation.
This is the "Cloth" that will be equipped on the character.
(1) Unlike "Body", you can see that bones related to the hat are added.
(2) This character does not have animations.
This is a script that synchronizes "Body" and "Cloth".
(1) "CharacterTransform", which is the main body of the character, and "body" members. "CharacterTransform" is the parent Transform of "Body". "Cloth" will be attached here.
(2) When you press a key on the keyboard, you can perform "Attach clothing", "Unattach clothing", and "Play and stop animation".
(3) This is the code that attaches "Cloth" to "Body". It works in the following order.
- Register "Cloth" as a child of "CharacterTransform", which is the Transform of the main body of the character, and adjust its position.
- Synchronize "Cloth" to "Body". Let's synchronize only the Bone for now by setting the function argument.
- Reset the order of the meshes of "Cloth" based on the meshes of "Body".
(4) You can detach "Cloth" by pressing a keyboard key.
(1) We configured the scene as above.
(2) Add scripts and assign target objects to members.
When you run the game, the attached "Cloth" will move according to the animation of the "Body" as shown above.
Up to this point, it is the general "Bone Synchronization" process, and you are probably familiar with it.
Now, let's add animation to the "Cloth" and synchronize it.
(1) Open the "Cloth" object and create an animation called "Idle" that is the same as "Body". (Whether it is a loop or not and the animation length should be the same.)
(2) Let's move the bones as above. Here are a few things to check.
- Since the Bones of the Hat are not in the "Body", they are not originally the target of the synchronization of the "Bone". If so, they will move according to the animation of the "Cloth" as shown in the screen above when the animation is synchronized.
- The guards equipped on both wrists are created to be animated as above, but since they are the target of the "Bone synchronization", the animation synchronization will be ignored.
Modify the script.
The second bool argument to Synchronize determines whether to "sync animations".
Let's set this argument to true.
Now it will be "sync Bone + Animation".
When you run the game, you will see that the "Cloth" is equipped to the "Body" and its own "Idle" animation is played along with the "Body".
(You can see that the wrist guard has a higher priority on the Bone synchronization.)
That answers your first question.
So, let's see how the "Cloth" will behave if we add more animations to the "Body", as in your second question.
We added an animation called "Crouch" to "Body" as shown above.
If you add a script to play the animation called "Crouch" and run the game, you will see the result as above.
Basically, "Bone Synchronization" is working fine.
However, "Animation Synchronization" is different depending on the animation.
Since both "Body" and "Cloth" have an animation called "Idle", you can see that each animation is running at the same time. (See Hat part.)
On the other hand, "Cloth" does not have an animation called "Crouch", so only "Bone Sync" works while this animation is playing.
So with this method, "Cloth" should also have all the animations.
As we explained earlier, it is not wrong to create all the animations of "Body" in "Cloth" as well, but as you worry, it will be a huge hassle.
"Bone Sync" is a feature to prevent that, so if you make the most of the features, you can make your work more efficient.
You may also want to consider the approaches we suggested.
In addition, other users who have done similar work often ask us questions when the work is already quite far along.
After a lot of work has been done, it is not easy for us to help users.
So we recommend that you try several methods in advance and start with the one that works best for your project.
Thank you.