Bone Spring setup
BoneSpring can swing a bone (Transform) by a spring.
Here we will explain how to set up BoneSpring using a Cube model.
Introduction of Bone Spring
First, register the Transform to be shaken.
Register Cube Transform in RootList.
If the same parameter control is performed, there is no problem even if multiple Transforms are registered.
Set the parameters that control the behavior of the spring.
Just like BoneCloth, let’s load presets and set up easily.
Press the [Load] button to the right of [Paramaters].
Select and load the built-in preset [BoneSpring_Breast.json] from Explorer.
Build-in presets are located in the MagicaCloth/Preset folder.
You have now set most of the parameters for the bone spring.
(* Adjustment is necessary according to the scene used from here)
Now that a series of settings has been completed, press the [Create] button to create the data.
The setting is completed when the status icon of BoneSpring changes to “white”.
About Transform configuration
The Root Transform of BoneSpring and the Transform that actually moves by animation etc. must be different.
This is because the Root Transform is controlled by BoneSpring and the external movement effects are ignored.
Therefore, it is desirable that the structure of Transform is as follows.
- ① is Tranfrom which moves by animation. This Transform can be moved freely.
- ② is the Root Transform controlled by BoneSpring. This Transform cannot be moved because it is controlled by BoneSpring.
Testing Bone Spring
When the build is complete, let’s actually run Unity and test.
After execution, you can confirm that the Cube shakes by moving the above Move Transform in the scene view.
This completes the basic setup of BoneSpring.
Bone Spring Adjustment Guide
Movement range restriction
By setting the [Clamp Position] parameter, it is possible to specify the limit range to move.
Movement restriction can be performed for each XYZ axis.
Rotation control with movement
By setting [Adjust Rotation], it is possible to add rotation to the Root Transform according to the distance moved by the spring.
(* Off (Fixed) by default)
|Fixed||No rotation control is performed.|
|XY Move||Rotate X axis and Y axis with movement|
|XZ Move||Rotate X axis and Z axis with movement|
|YZ Move||Rotate Y axis and Z axis with movement|