Skip to content

Unity‐chan Spring Bones Tutorial

DogeThis edited this page Aug 8, 2026 · 16 revisions

This tutorial should be followed after the Costume tutorial as it relies on the Unity-chan Blender and Unity projects.

At the end of this tutorial, you will have a tail for the Unity-chan costume that moves around like this.

2026-08-01.00-44-39.mp4

What are Spring Bones and what are they for?

Recall how we had some animations to test the Unity-chan model with in the costume tutorial. Animations like running and attacking are animations driving by keyframes on a timeline.

In the game, there is another type of animation that is physics-based. Things like hair and parts of clothes move and sway in the wind, and also react to character movement. Unlike the running animations for example, there aren't any keyframes associated with these physics. These types of simulations are driven by spring bones.

Spring bones exist as an interaction of two parts - bones like we saw in Blender previously, and a Unity component.

The bones and weight painting define which parts should be influenced by the physics, and the components provide instructions to the game on how they should move.

Dumping the model

We'll be starting in Unity first. Using the Dumper (guide to come), dump Merrin's uBody into your project. The full path is:

Data/StreamingAssets/aa/Switch/fe_assets_unit/model/ubody/cav2cf/c452/prefabs/ubody_cav2cf_c452.bundle

Once her model is dumped, you should be able to find it here:

image

Examining the physics with Play Mode

With your Sample Scene open, drag-and-drop Merrin's uBody prefab into the scene like this, then use the eye button to hide any other models in the scene.

image

Then, press the Play button in the middle of the top bar.

image

After a bit of loading, the Editor will jump to the Game tab.

image

Click on the Scene tab again to jump back to looking at Merrin's uBody.

image

You should see something like this. Notice how the tail is swaying and so is the cravat (or whatever the white ruffled cloth on her chest is called).

merrin.example.mov

Stop the playing by clicking play button again.

Finding the bones

Now, open Merrin's uBody prefab by clicking on it in the Hierarchy, the clicking Prefab Open in the Inspector.

image image

You should see a focused view like this now:

image

The list of items under c_trans are the bones that you saw in the animation section of the costume tutorial.

Find the object called c_mngtal_jnt and click on it. (This object would show up as a bone in Blender.)

Notice how a Spring Job Manager component shows up in the Inspector panel. If you scroll around in it, you can see some settings.

image

Now try selecting a few of the objects below c_mngtal_jnt one by one.

For example here is c_sprtal1_jnt selected.

image

and c_sprtal2_jnt selected.

image

And in the side panel, we see a component called Spring Bone.

image

It also has a lot settings that you can scroll to check out a bit.

Finally, click on the object named c_sprtal1_piv.

image

Notice how it has a Spring Bone Pivot component.

The Spring Job Manager and Spring Bone and Pivots work together to describe how the physics should be animated.

We'll be copying over the bones and the physics for the tail onto the Unity-chan costume.

Making sure we have the right FBX Exporter

We need a certain version of the FBX package in Unity for this next step.

To check if you have the right version, go to Window -> Package Manager

image

In the window that pops up, make sure the Packages: In Project option is selected.

image

Look for FBX Exporter (Divine Dragon Edition). If you see only FBX Exporter, you need to switch to our version.

Press the + corner in the upper left corner, and choose Add package from Git Url

image

Then, paste this address.

https://github.com/DivineDragonFanClub/com.unity.formats.fbx.git?path=/com.unity.formats.fbx

Afterwards, you will have FBX Exporter (Divine Dragon Edition).

image

Exporting the model for use in Blender

We will export this model for use in Blender so we can borrow the bones.

While still in this focused Prefab mode, right click on the root object (uBody_Cav2CF_c452), and choose Export to FBX...

image

You should see a window like this pop up.

image

If you don't see the Apply Sommie's Recommended Defaults button, make sure to install the new version of the FBX exporter by doing (this).

If you see Apply Sommie's Recommended Defaults and it isn't greyed out, click it.

You can leave everything set at the defaults, and click Export. By default, this will export the Merrin uBody straight into the Assets folder.

Exporting the Spring Bone information

With the uBody_Cav2CF_c452 still selected, go to UTJ -> Spring Bone Window.

image

You should see something like this:

image

Under Dynamics CSV, click the Save button.

You should see a window pop up that looks like this:

image

Click Mass Save Prefab CSVs. This should open a window in your Unity project.

You can make a New Folder called Merrin Physics, and save inside of there.

image

On the bottom bar, you should see a message saving that the file was saved.

image

If you look at the folder, you'll see a few CSV files were created there.

image

If you open it in a spreadsheet editor, c_mngtal_jnt_Dynamics.csv might look something like this

image

We will use this later to copy settings onto our Unity-chan tail.

Back in Blender

We will now be doing a bone transplant to reuse Merrin's tail bones for the Unity-chan costume.

Importing Merrin's uBody

First, open your Unity-chan Blender project.

In your operating system, locate the Merrin uBody FBX that you exported (uBody_Cav2CF_c452.fbx) in your Unity project, and drag it into Blender.

The default settings are fine.

image

You'll see something like this with Merrin's uBody right on top of the Unity-chan work we've been doing.

image

Shift-click on the eye for uBody_Base0AF_c000 to hide it for now.

image

Then click on one of the Merrin bones,

image

and enter Edit mode.

image

Finding the bones we need

Let's find the tail bones for Merrin.

In the sidepanel, type in c_mngtal_jnt to locate that bone. Note that this was the bone the Spring Job Manager component was attached to in Unity. Once you see it, click on it in the sidepanel.

image

Clear the search. You will momentarily lose sight of the selection.

image

However, it is actually still selected. With your mouse hovering over the sidepanel, press the . (period) key.

image

The sidepanel will flip open to your selection. Note how the parent for this bone is c_spine1vol_jnt.

Now, shift-click on the twirly next to c_mngtal_jnt. These bones are the same ones we inspected in Unity earlier.

image

Separating the bones from Merrin's armature

We need to separate the bones now from Merrin so we can attach them to the Unity-chan costume base body.

With c_mngtal_jnt still selected, go to Select -> Select Similar -> Select Children, and choose this option.

image

You should see something like this now:

image

Then, with your mouse hovering over the viewport, press P to Separate them from this armature.

If this succeeded, you will see a message at the bottom of the screen saying Separated bones

image

Reattaching the bones

Scroll down in the sidepanel to locate the separated bones.

image

Enter Object Mode and click on uBody_Cav2CF_c452.001.

image

Then, scroll up in your sidepanel and find uBody_Base0AF_c000. Click on its eye to show it. Then, Ctrl-click on it.

You should see the tail bones in outlined in dark orange, and the uBody_Base0AF_c000 bones outlined in light orange.

image

Now, with the mouse hovering over the viewport, press Ctrl-J to join the two armatures.

image

Notice how the little bone count has increased.

image image

uBody_Cav2CF_c452.001 is also gone.

Twirl open the green uBody_Base0AF_c000.

image

Notice that the c_mngtal_jnt is not in the right place yet.

Click on c_mngtal_jnt, and enter Edit mode. Your sidepanel may lose view of the bone, so hover your mouse over the sidepanel and press the . (period) key to show it again.

Select it, and scroll down to the Relations section in the Bone properties tab.

image

In the Parent field, enter c_spine1vol_jnt and accept it.

image

Press . again with your mouse over the side panel to locate where it went. The bone is now where it should be in the hierarchy - under c_spine1vol_jnt.

image

Grabbing Merrin's tail

Now, shift-click the eye for Merrin uBody_Cav2CF_c452 to hide all of her for now.

image

And shift-click the eye for the Unity-chan costume twice to show everything.

image

You should see something like this now:

image

Return to Object mode.

Next, find the Tale object in the original Unity-chan object. Click the eye to show it.

image

Reparent it into costume we've been working on. You can drag-and-drag it over meshGP while holding shift.

image

Now, go back to Merrin and show Cav2CF_c452_Dress by clicking on its eye.

image

Now, select Cav2CF_c452_Dress and enter Edit mode.

Hover over part of the tail and press L to select linked. You can use Normal mode.

image

Separate out the tail with P -> Selection.

image

Return to Object mode, select Cav2CF_c452_Dress.001 and then hide Cav2CF_c452_Dress.

Although the tails are broadly in the same position, Merrin's tail is quite a bit larger than Unity-chan's tail. We can still use a weight transfer even in this situation.

If you wish, you can scale up Unity chan's tale to match up with Merrin's tale.

For this tutorial, will be proceeding with the tails being different sizes, but I will move the tale up a little bit so that its "root" matches where the tail comes out for Merrin.

image image

Tail/tale weight transfer

Open Robust Weight Transfer by clicking the SENT tab.

Set the source to Cav2CF_c452_Dress.001 (Merrin's tail), uncheck Limit Vertex Groups, and then choose Subset: All Groups. Also, since we're transfering weights from the larger tail to the smaller tale, let's lower the Max Distance to 0.001m.

Why do we need these settings?We need to change away `Deform Pose Bones` because we removed all of the bones from Merrin and moved them onto our base body. With `All Groups` in this situation, we would transfer no weights at all. If we duplicated the bones instead, we could leave Subset: on `Deform Pose Bones`.

The settings should look like this now:

image

Now, select Tale, and delete its vertex groups.

image

and click Transfer Weights in Robust Weight Transfer. You should see the new vertex groups.

image

Go to the modifier tab, and change the armature to the base body.

image

Close Robust Weight Transfer, and hide Merrin's tail.

Click on uBody_Base0AF_c000, and enter Pose position.

image

Notice that even if you scrub the animation, the tail doesn't move, but rather sticks up in place. This is expected since, we don't have Spring Bone physics simulation in Blender.

However, we can test if the weighting was transferred well.

Enter Pose mode.

image

And click on any of the tale bones, and try moving them around with G.

image You should see the tale moving with the bone!

Preparing to export into Unity

Remember to apply the scale for the tale. image

With the tale selected, Ctrl-A, and All Transforms.

image image

If you wish, you can color the tale with with the instructions in the costume . One interesting thing to note is that the color for Merrin's tail is not quite as red as the parts of her body.

image image

To get a sample of this color, make sure you selected Merrin's tail and enter Vertex paint mode.

Click this little arrow here in the upper right of the viewport.

image

Then under Lighting, choose "flat".

image

Now, with the Brush tool selected, press Shift-X, which should turn your mouse into a eyedropped, and click on the tail.

The resulting color will be something like this (hex #260000).

image

You can copy that value and apply it as a color for Unity-chan's tale like we did in the outlines section.

Remember to turn the lighting setting back to Studio.

Double check that you are only showing the Unity-chan costume in Blender and that all the Merrin parts are hidden.

Then, export with Visible Objects, the scale set to 0.01, and Animations unchecked, as described in this section in the costume tutorial.

You can export it right into your Unity project's Asset folder and overwrite your existing FBX.

Updating your textures

If you haven't done the textures tutorial yet

Now is a good time to try doing the texture tutorial here.

If you already did the textures tutorial

If you wish, you can reimport your new Unity-chan FBX file, and bake an occlusion map for the tale.

Back in Unity

Setting up the model

Since we added a new mesh piece, delete your existing prefab, and drag in the updated FBX into your scene.

You should see something like this now. Note that since the tale uses the Skin material, it will already be textured in Unity.

image

Before making it into a prefab, let's apply the Spring Bone settings we previously saved.

Applying Spring Bones settings

Now we will apply some of the settings we exported from Merrin's uBody earlier onto the Unity-chan costume.

Under the Unity-chan costume object, find and select the bone called c_mngtal_jnt.

image

Then, open the Spring Bone Window.

image

Under Dynamics CSV, click Open.

image

You should see something like this now.

image

Verify that the Spring bone root is set to c_mngtal_jnt. If not, select c_mngtal_jnt, then click Get root from selection.

Now click Load CSV and Setup, and locate and select the file called c_mngtal_jnt_Dynamics. Then confirm your choice.

image

You can close the Spring Bones window now.

image

Notice how there is now a Spring Job Manager on the c_mngtal_jnt object. You can also check that the Spring Bones and Pivot objects are also in the hierarchy now.

You can use Play now to check the result!

tale.demo.mov

Now, make this object into a Prefab, as we did in this section in the costume tutorial.

Build using Divine Builder and let's check the result in-game!

Seeing the "tale" in game

Looking at it on Etie, if you see the tale (tail) moving a bit in the wind, then everything is working!

etie.mp4

If you're using female Alear, equip the costume and try running around a bit.

You may notice that there's something missing from the shadow!

The core body is casting a shadow, and so is Alear's hair. But even as the tail is flailing around, it doesn't cast a shadow.

2026-07-31.00-40-35.mp4

This is because we are missing a ShadowMesh for the Unity-chan costume.

Shadowmesh

Back in Blender, let's take a look at Merrin's uBody again.

Notice how there is a ShadowMesh_Dress object. Show it with the eye, then focus on it with /.

image

It isn't her whole costume - just the most salient parts of the shadow that would be noticeable sticking out from the body. Also notice that it has an MtShadow material.

Cancel the focus with /.

Let's make a Shadow Mesh for Unity chan's tale.

Duplicating objects

First, we need to make a duplicate of Unity-chan's tale.

Make sure you're in Object mode, and run Object -> Duplicate Objects. Then Enter to confirm the duplication.

image

You will now be selecting the duplicate Tale. image

Double click on the name, and rename it to ShadowMesh.

Now, go to the Material tab. It should say Boots right now.

image

Click on the material ball next to Boots.

image

Search for MtShadow, and select it.

image

You won't see anything different in the viewport immediately, but if you hide the original Tale, you'll see an uncolored tale remaining.

image

This is expected since we don't have any textures for the shadow mesh as it's just a shader.

Make sure everything is unhidden, and export the costume again.

Setting up the MtShadow material

Jumping back into Unity, re-drag out the Unity-chan FBX into the scene, since we have now added a mesh piece.

Open up meshGP and select the ShadowMesh.

image

Scroll down to the Mt Shadow (Material), and click on the Shader dropdown and search for Shadow.

After you apply, it should look like this.

image

You can flip over it to look at some settings, but there's nothing we need to change.

Delete the old Unity-chan prefab, and remake the prefab with the new Unity-chan object.

Also remember you need to reapply the spring bones settings before you build!

Back in game

The tale now has a shadow.

2026-08-01.00-44-39.mp4

This is the end of this tutorial.

Where to go from here

You can try to tweak the tale to have physics more to your liking! For a comprehensive guide on editing springbones and making your own, go here.

You can add spring bones to the other parts of the Unity-chan costume that might move, like the little tag on her stockings and wrists.

Special thanks

Thanks to Redundo for testing this tutorial!

Clone this wiki locally