Skip to content

Unity‐chan Costume Tutorial

Bad edited this page Aug 3, 2026 · 99 revisions

In this tutorial, we will fit the Unity-Chan! Sunny Side Up costume for use on female characters.

By the end of the tutorial, we will have the costume in-game as a Cobalt mod.

imageimage

No experience with Blender or Unity is needed before starting this tutorial.

Requirements for Engage

You should have the latest version of Cobalt installed.

You should have a save file where you have access to the accessory shop on the Somniel. If you don't have one, you can find one on Gamebanana.

A dump of the game will be helpful for the XML steps, but isn't required.

Required Programs

You will need to have these programs installed.

  1. Blender. This tutorial using Blender 5.0, but should be compatible with future versions as well.
  2. Robust Weight Transfer, a free Blender plugin. Note that if you have Blender 5.1 or above, you should download robust-weight-transfer-libigl26.zip.
  3. Unity.
  4. A text editor of your choice.

Starting Files

  1. (Optional) The finished mod if you want to try it out in-game first.
  2. This Engage female base body
  3. The Unity-chan costume FBX
  4. The Unity-chan costume textures.

Opening the base body file

Open the Engage female base body file by double-clicking on it.

This is what it should look like right after it opens in Blender. image

Camera control

You can orbit the camera by clicking and holding the middle mouse button, and then moving the mouse. image

You can pan the camera by pressing the shift key and then clicking the middle mouse button, and moving the mouse. image

You can zoom in and out by scrolling the mouse wheel. image

In the upper right corner, you should see a few colored circles. This tool is called the Navigation Gizmo.

Click on the colored circles with letters on them, to quickly change viewing angles and snap to side and top views. image

image

Importing the Unity-chan costume

Drag-and-drop the unity chan FBX you downloaded onto the Blender window.

You should see a dialog box that looks like this. Leave everything set at their defaults. Click Import FBX.

image

Hiding objects

You will notice that Unity-chan shows up right on top of the base body. Additionally, a few items are highlighted in the side panel in bright orange. These are the objects in the FBX that we just imported. image

This are a bit messy, so we will start by hiding the Engage base body. Move your mouse over the eye icon next to the base body in the side panel.

image

Shift-click the button to hide it and everything underneath it. image

You will notice that only Unity-chan is left in the viewport. If this is not the case, make sure you shift-clicked the eye next to uBody_Base0AF_c000, and not the camera icon.

Click on the little arrow next to Character1_Reference image

You should see something like this in the side panel.

image

There are a lot of objects here, but we will be working with the Shirt first.

Shift-click on the eye for Character1_Reference to hide everything underneath it, then click the eye for just the Shirt to unhide it. image

Now scroll down in the side panel to the bottom, and click the eye next to uBody_Base0AF_c000_Skin.

Your viewport should look like this now, with only uBody_Base0AF_c000_Skin and Shirt showing. image

On Saving

The save options can be found in the File menu.

Notice that there are a few options here:

image

For now, click Save as and give a suitable name like Unity Chan Costume.

We won't be calling out saving every time in this tutorial - you should Save every now and then.

If you want to have multiple backups along the way, you can use Save Incremental which will automatically save a new project with the next version number, like Unity Chan Costume1, Unity Chan Costume2, etc.

Fitting the Shirt

Moving objects

The Shirt isn't a great fit right now. It's a floating over the base body, and is a bit big.

Move your mouse over to the Navigation Gizmo the click the green circle until you're looking at the model straight on. It should show -Y.

image

Now, select the Shirt by left clicking on it in the viewport. Notice that is it highlighted in orange, and the object saying Shirt is also highlighted in the side panel.

image

In Blender, we can move objects by pressing the G key, and then moving the mouse. To remember this, we can think of G as standing for "Grab".

Now, press the G key. Notice that the orange highlight is now white. Move your mouse down a bit, so the Shirt on the body. image

You might find that it's tricky to move things in a straight line, so press Z key while the object is still being moved. You will see a blue line like this. image

If you move the mouse now, the movement will be locked to the Z axis (up and down). This is called Axis Locking. This allows us to move the Shirt while keeping it centered. The same feature is available with the X and Y keys for the corresponding axes.

When you get the Shirt fitting over her shoulders, click the mouse button to confirm the move. Notice that the highlight is orange again.

If you don't like where you put the Shirt, you can use Ctrl-Z to undo, or G to move it again.

The scene should look something like this now. image

Let's check how well the costume is fitting now. Use the Navigation Gizmo and the middle mouse button to check out our work.

While the Shirt is in a better position, it is a bit too big right now. image

Scaling objects

In Blender, we can scale objects by pressing the S key, and then moving the mouse. To remember this, we can think of S as standing for "Scale".

With the Shirt still selected, press the S key and move your mouse.

You will notice that it is getting smaller, but is also moving around in a strange way. That is because the origin point for this object is somewhere down near the ground. The scale command, by default, scales relative to this point.

If you zoom out a bit with the mouse wheel and keep the Shirt selected, you will see an orange dot near the feet. image

We can move the origin point to a more sensible place.

Making sure that the Shirt is selected, go to the Object menu, choose Set Origin, and then Origin to Geometry. image

Notice that the orange dot is now near the center of the Shirt.

image

Now try using the S key again, and scale the Shirt to fit better. You can also reposition it with G if you need to.

The Shirt should look something like this now. Don't worry if the Shirt isn't perfectly covering her torso, because the Hoodie we'll work on next covers the rest of the upper body.

image

We'll come back to finish adjustments to the Shirt later. Save your work before we continue.

Fitting the Hoodie

Selecting multiple objects

Use the eye icon and hide the Shirt. Then, show the Hoodie and the Zipper.

image

We won't be using HoodieBack in this tutorial, so make sure not to select it.

The Hoodie isn't a great fit right now, as it's just floating over the base body.

Select the Hoodie, then use the G key to move it into a better place. Remember to click to commit the movement. image

However, notice that the Zipper didn't move along with the Hoodie, even though it reality, they should be attached together. Right now, because they are two separate objects, they are not actually related.

Undo the move with Ctrl-Z.

We can shift-click the two objects to move them together at the same time.

Try this now by first clicking on the Zipper in the viewport, and then shift-clicking on the Hoodie. They should both be highlighted in orange now. image

Now, use the G key to move. The two objects now move together. Remember to use the G key, then the Z key to constrain the movement, to keep the Hoodie moving only up and down.

You should have something like this now: image

Joining objects

Since we will be continuing to work with these two objects, we will join them so that they are one object.

To do that, we select the two items and then join them.

Select the Zipper first, and then select the Hoodie.

If you're having trouble selecting the Hoodie with shift-click, you can also control-click (not shift-click) on the name of the object in the side panel to select multiple objects. The resulting selection will be the same either way.

If you do not see the items open in the sidepanel, move your mouse over the sidepanel and press the period . key.

Notice the colors here: in the viewport, the Zipper is darker orange, and the Hoodie is lighter orange. In the side panel, the Hoodie is the one with the lighter blue rectangle.

The order in which we select objects can change the results of certain operations, including join. In this case, since Hoodie was selected second, the Zipper will join into the Hoodie object, and Zipper itself will disappear.

image

Now, join the objects by choosing Object -> Join.

image

and we will be left with just the Hoodie object.

If you're left with the Zipper instead of the Hoodie object, undo the join with Ctrl-Z, and make sure you first select the Zipper, then the Hoodie.

You should end up with something like this. image

Object and Edit mode

The next few steps will involve familiarizing ourselves with tools used in mesh editing.

Switch to the front view by clicking on the Navigation Gizmo as we did before.

image

Notice that while the Hoodie is overall in a good place, the sides are a bit wide compared to the base body.

We will need to edit the shape of the Hoodie to better match the base body.

In the upper left corner, there is a dropdown that looks like this and currently says Object Mode in it. image

This allows us to select different modes for Blender.

Object Mode is used to manipulate objects as a whole. We've been using this mode so far.

Edit Mode is used to edit the vertices that make up the object.

Make sure that the Hoodie is selected, and click on the mode dropdown, then select Edit Mode. image

The view will look like this now.

image

Notice that a grid and a bunch of dots, called vertices, are now overlaid on the Hoodie. If it doesn't look like this, switch back to Object Mode, double check that you are selecting the Hoodie body before switching to Edit Mode.

Select a vertex like this by moving your mouse over it and clicking it. (It doesn't need to be this precise one, any in the area will be OK for this part.)

image

The same G key we used to move the Hoodie as an object, can be used to move the vertices as well. Press G to start moving. Try moving your mouse in various directions.

Notice that now the shape of the Hoodie changes when you move your mouse. image

If you left click, you will place the vertex there, and end the movement. Using G, we can adjust the shape of the Hoodie mesh to fit the base body better.

However, there are many vertices, and it would take a lot of time to move each one of the individually.

Undo this change for now.

Proportional Editing

In the same bar where the mode dropdown was, there is a tool called (Proportional Editing)[https://docs.blender.org/manual/en/latest/editors/3dview/controls/proportional_editing.html].

image

Click on it. The button should turn blue, indicating it is active.

image

Now, select the a vertex by clicking on it, and move it again with G. Scroll your mouse wheel up and down, and you will see a circle changing sizes. This is the sphere of influence for the proportional edit.

Notice that now when you move the mouse, the selected point and its neighbors are moved.

Try a few different circle sizes to get a feel for this tool.

image image

Once you find a good placement, click to confirm it.

You may have something like this: image

Although we fixed one side of the Hoodie, the other side is still sticking out. While we could use the same method we did just above, again, there is a better way.

Undo any changes you've made so far with Ctrl-Z. (Last time, I promise.)

Taking advantage of symmetry

The Unity-chan costume was created in a way that is symmetrical. We can take advantage of that symmetry while editing.

In the upper right hand corner near the Navigation Gizmo, we can find the mesh symmetry editing options. image

Turn on Enable mesh symmetry in the X axis.

image

After you turn it on, the button will turn blue.

image

Now, we can try to adjust the Hoodie again. Click on one on the vertices with proportional editing on, and use the G key.

You will notice that the opposite side move together now when editing, like a mirror image. image

Selecting multiple vertices.

We can continue adjusting the Hoodie to fit the base body better.

To help maintain the proportions of the Hoodie, you can select multiple vertices at the same time to maintain their shape.

To see what vertex selection tools there are, left click and hold this button in the upper left corner. image

Let's choose the Select Circle option, and click around the side of the Hoodie to select some vertices in this area.

image

Now moving them with G, they will stay together and maintain their shape and relative positions to each other.

image

Try to get the sides of your Hoodie looking something like this, and we will be ready for the next step.

Parenting objects

In Engage, the mesh pieces we have been working on belong under the meshGP object. We'll move them with a feature called Parenting Objects.

First, make sure you're in Object Mode.

Click on the Hoodie in either the viewport or the side panel. Then, find the meshGP object in the side panel, and control click on it.

Then, go to Object -> Parent -> Object (you may need to scroll up in the menu to see this option).

You should see this panel pop up in the lower left corner - check Keep Transform to make sure the mesh doesn't shift out of place.

image

Now, notice in the side panel that the Hoodie is now under meshGP. Note that the order in which you click the objects matters, so if you get something unexpected, double check what order you clicked them in.

image

Just do this for the Hoodie for now, and save your project.

X-Ray

Using the Navigation Gizmo, rotate the viewport so that we are looking at the back of the model.

image

Notice that the body is sticking out of the Hoodie a bit at the bottom, but the body covers the Hoodie so we don't see any of the vertices.

We can use the X-Ray mode to see all the vertices.

You can find it in your top bar here. image

If you do not see it, hover your mouse and scroll the mouse wheel until the button comes into view.

Click it, and it should become blue to indicate it is activated.

image

Notice now that we can see all the vertices for the Hoodie.

image

Try clicking on a vertex that is clipping into the body, such as this one.

image

You may find it hard to tell which vertex is actually selected. Reposition the camera so that you can get a better view.

With an angle such of this one, use the Select Circle and select a few of the vertices that are clipping out.

image

Making sure you have Proportional Editing turned on, use G to move the vertices. Constrain the movement to be along the Y axis by pressing the Y key while this is hapepning.

image

Now, move them out of the body.

Afterwards, you can turn off X-Ray. image

The Hoodie should no longer be clipping into the body. If you wish, you can move a few more vertices around smooth out your changes.

When you're ready to move on, save, and continue to the next step.

Fitting the Hoodie and the Shirt

Switch back to Object Mode.

Then, turn on the Shirt again via the eye in the side panel.

Depending on how you fit your Shirt and Hoodie, you may notice that the Shirt clips out of the Hoodie in some places, or the Shirt and the Hoodie don't properly cover the skin.

In my case, we can see that from angles, there is some exposed skin from the Shirt being incompletely modeled. image

Using the techniques we went over above, get the Shirt fitting something like this and to your liking.

If you want to edit the Hoodie, you can switch back to the Hoodie to edit that to your liking.

Remember to use Proportional Editing and the mirror editing option. When moving vertices with G, remember that you can use the X, Y, Z to constrain your movements so they are predictable.

If the Hoodie is in your way, you can hide it with the eye button temporarily.

At the end, the Shirt and the Hoodie should look something like this.

In my case, I edited the Hoodie to fit more tightly around her torso. image

Checking how well the costume fits with an animation

By the end of this section, we will be able to play an animation with our costume on the character to check how well it is fitting.

For this tutorial, we included some animations to test with in the base body project. There will be an upcoming guide on how to import animations yourself.

To be able to play the animations, we first need to be able to select the bones for body. We previously hid them, so we'll need to unhide them.

First make sure you're in Object mode. Then click on uBody_Base0AF_c000 in the side panel, and click the eye icon. image

You should see the bones now, which look like thin pyramids with a sphere on them. image

Then, click the Data button (it looks like a little green person running). Then in the Pose section, choose Pose Position. image

Now we need to open the Action Editor to play our animation.

Depending on the state of your UI, you will need to take different steps to open the editor.

First, check the bottom of your screen for a collapsed section that looks like this:

image

If you see it, you can drag on it to expand it up a bit. If you don't see a section down there, you can make one yourself by right clicking right above the status bar and choosing Horizontal Split.

  1. Right click here
image
  1. Choose "Horizontal Split"
image
  1. Choose a line to split it at, and you'll see something like this.
image
  1. You can put your mouse between the two windows to adjust its size, similar to where you put the mouse in step 1.

Click the button in the upper left corner of that window, choose Dope Sheet, then switch to Action Editor.

You can expand the bottom section by putting your mouse between that section and the viewport and dragging up.

After this, click on this button in the corner, look under the Animation section, and choose Dope Sheet.

image

Then click Dope Sheet, and in this menu, choose Action Editor.

image

Finally click the button next to the + New button, and in this dropdown, choose the first item, labelled uAnim_Drg0AF-Sw1_c000_Attack1.

image

You should see the base body snap into position. image

Now, by clicking and dragging the blue line in the Timeline in the action editor, we can see the base body moving. image

However, notice that the costume is not moving with the body - it is just floating in place.

We need to do a few more things before the clothing pieces will move with the body.

How the base body moves

Here's some explanation about how animations work. If you just want to get things working, you can skip ahead to

First, click on the uBody_Base0AF_c000_Skin object, and then the blue wrench.

image

This will show the modifiers currently applied to this object..

Notice that there is a modifier here, named Armature. It has an icon tha tlooks like a little person. image

This modifier has an Object property, set to uBody_Base0AF_c000. This tells this skin object that it should react to the bones in that object when they move.

Now click on the green triangle with squares. If you don't see this icon, make sure you still have uBody_Base0AF_c000_Skin selected.

image

These are the vertex groups.

Notice that the if you flip open the bones, you will see the same names as list of names in the vertex group.

image

Let's visualize these vertex groups.

Making sure that base body uBody_Base0AF_c000_Skin is selected, switch to Weight Paint mode.

image

Now, make sure c_hip_jnt is selected in the Vertex Groups panel. image

Notice how some areas light up in a gradient of colors. These are the vertices that will move with that bone.

Switch back to Object Mode, click on the Hoodie. On the Vertex Groups page, notice how none of these groups are named anything similar to what the the base body's names were. This is because these were created in reference to Unity-chan's bones, not Engage's bones.

In fact, if we go and check the modifiers for the Hoodie,

image

we'll find that it's not even using the Engage armature - Character1_Reference is Unity-chan's bones.

These two different pieces, the modifier pointing to the right armature, and the right vertex groups, are both required for our costume to move.

Assigning the Armature and clearing the existing vertex groups

In Object Mode, make sure the Hoodie is selected, and the modifier tab is open. There is an armature already, but right now, it's still assigned to the Unity-chan modifier. Click on Object and switch the Object to uBody_Base0AF_c000.

image

Then, go to the Data tab, and under Vertex Groups, choose Delete All Groups. These are the vertex groups for Unity-chan's original rig which are no longer needed.

image

Do the same for the Shirt.

We now have the armatures set up, but we have no weight painting.

We will reuse the weights that the Engage base body has.

Weight transfer

First, we need to set the Engage body back to Rest pose. To do so, click on the bones in Object mode, and in the Running Person tab, choose Rest Position.

image

You need to have Robust Weight Transfer installed for this step. Download the latest release, and drag-and-drop it over Blender. Then, find the SENT tab and click it. If you can't see this side bar, first press the N key. image

then open Robust Weight Transfer. Find the button that says Install Dependencies and click it. Then, save your project and restart Blender. Then open up your project to continue here.

If you see an error message saying Installation Failed, make sure you downloaded the right version of Robust Weight Transfer for your version of Blender.

With SENT open:

image

For the source, choose uBody_Base0AF_c000.

image

Then, select the Hoodie and click Transfer Weights. If this button is grayed out, make sure you are in Object Mode, and not Edit Mode.

Notice that in the Vertex Groups section, the Hoodie now has bone names from Engage's skeleton. image

Do the same for the Shirt.

Now, select the bones again and choose Pose Mode.

The costume now moves with the body as you scrub through the timeline. image

You can click this button and try out how other animations look. There may be some clipping, but this is a good start.

image image

With the Hoodie selected, go to Weight Paint Mode, and notice that the Hoodie now has weight painting with the Engage bones. image

Before we move on to testing in game, let's get the costume in a decent shape by finishing off with the Shorts. Take a save before we continue.

Fitting the Shorts

Rip tool

Now, let's work on fitting the Shorts.

Hide everything except the LowerBody for now.

To quickly hide everything, use the shortcut Shift-H.

Then, find the LowerBody object in the side panel, and select it. Then click its eye.

You should see something like this. image

Make sure the LowerBody is selected, then switch to Edit Mode.

Notice that the LowerBody itself has skin from the Unity-chan costume itself.

Orbit the camera around a bit. Conveniently for us, a ring of vertices that just so happens to define the boundary between the Shorts and the thighs.

image

We will cut out the Shorts for use in our costume. Since we have an Engage base skin already, we don't need the original Unity-chan leg skin parts.

Turn on X-Ray mode so we can get a better view of what's going on.

We will use the Select Loops feature.

Alt-click on an edge which is the visual boundary between the Shorts and the leg. This selects the ring that forms the leg Shorts.

image

Ensure Proportional Scaling is off, and then use G to check that you've selected this correctly. Try moving it up a bit at an angle. If your selection doesn't move like this, make sure that you did not deselect the ring. Use the Esc key to cancel this move.

image

Notice that there's some "smearing"; we can see a bit of a blend of the Shorts color and the skin color when moving. This is because the Shorts are still connected to the thighs.

To separate the Shorts from the thighs, we can use the Rip Vertices command.

With the ring around the leg still selected, go to Vertex -> Rip Vertices. Then, hit enter twice in a row. image

Using G now, try moving the selected ring again. You'll notice that the Shorts and the skin are no longer joined. image

Even if we have mirror editing on, we still need to do this again to the other short leg. So, repeat the above process with the other leg.

image

Separate

With that done, we will now separate the Shorts section into its own object, like how the Hoodie and Shirt were separate.

Press A twice quickly in a row to deselect everything.

Then, click on a vertex that's on the Shorts, and go to Select -> Select Linked -> Linked. This triggers the Select Linked tool.

image

You should see the Shorts vertices selected and nothing else. If you see the Shorts and a leg or two selected, makes sure you've ripped the boundary between the Shorts and the leg correctly.

image

Now we need to separate the selected parts out. To do so, with the Shorts still selected, go to Mesh -> Separate -> Selection, and choose it.

image

Notice that we now have LowerBody and LowerBody.001 objects in the outliner.

image

Switch to Object mode, and click on LowerBody.001. Double click on it and rename it to Shorts, then press Enter to confirm.

image image

Hide the old LowerBody for now. Using the techniques we discussed above, we will modifiy the Shorts so that they fit right.

Fixing mirroring problems with Symmetrize

Using the eye button, turn on the various parts of the costume that we previously hid, along with the Engage skin.

Change the bones back to Rest position.

Your window should look something like this now.

image

Notice that there is some clipping out of the Hoodie. Hide the Hoodie and orbit the camera behind the model.

image

You'll notice that it doesn't quite fit right yet.

Turn on the Mirror editing X symmetry, and try to edit the Shorts.

Notice that it isn't quite editing symmetrically.

image

This is because the Shorts are just slightly off such that we can't use this tool. Luckily, the two sides are pretty close in shape, we can use the Symmetrize tool to help fix this.

Use the A key to select all of the vertices in the Shorts, then choose Mesh -> Symmetrize

image

Now, when we edit, the edits will be applied to both sides.

Using the techniques we went over above, make the pants fit better.

You may find proportional editing and X-Ray helpful for this task. Make sure to show the Hoodie every now and then to make sure the Shorts aren't clipping out. If necessary, you may adjust the Hoodie a bit so that the Shorts don't clip out.

image

After you get the Shorts in a decent shape, update its armature modifier, delete its existing vertex groups, and do a weight transfer as we did before.

Don't worry too much if the Shorts look a little weird in the animations. It will be mostly covered by the Hoodie anyway.

You should have something that looks like this with the Shirt, Hoodie, and pants.

image

While there are still parts of the costume we haven't fitted yet, this is enough for now and we should check how the costume looks in game.

We will be preparing our costume to try in the game in the next step. Save your project.

Getting ready to export to Unity

Now, we'll do a few cleanup tasks to get the model ready for use in Unity.

Parenting the other costume pieces to meshGP.

First, make sure you're in Object Mode.

Like you did with the Hoodie, we need to parent Shirt and the Shorts.

Click on the Shirt in either the viewport or the side panel. Then, find the meshGP object in the side panel, and control click on it.

Then, go to Object -> Parent -> Object (you may need to scroll up in the menu to see this option).

Notice in the side panel that the Hoodie is now under meshGP. Remember that the order in which you click the objects matters, so if you get something unexpected, double check what order you clicked them in.

Repeat the same for the Shorts.

At the end, you should have a hierarchy that looks like this. image

Applying the transformations

Throughout the project, we've scaled, moved, and rotated objects to get them to fit.

Engage shading and physics work the best when things have default Transform values. We will need to Apply our tranformations.

Click on the Hoodie, and then twirl open this menu on the side of the viewport. Notice that the values for location are not all 0, and the scale is 0.010 for all the axes.

image

Now, go to Object -> Apply -> All Transforms.

image

Observe now that the location and rotation values are zeroed out, and the scale is all 1.000 across the board. (It's expected that the Dimensions are not zero here.)

image

Do the same for the Shirt and Shorts we have been working on.

You can safely apply transformations for all of the pieces under meshGP, but do not apply the Transforms for the uBody_Base0AF_c000 object.

It must have an X Rotation of 90 to work properly in the Unity project.

image

Exporting the costume

Recall how we brought in the Unity-chan costume from the FBX file. Now we will be exporting an FBX file for use in Unity.

First, hide all the objects that aren't in the Body_Base0AF_c000 object. Double check that everything underneath it, including the bones, are visible. Also, set the bones back to Rest position.

You should see something like this now: image

Then, go to File -> Export -> FBX

image

Under Include, choose Visible Objects.

For scale, type in 0.01.

Make sure animation is not checked.

Your settings should look like this:

image

Choose a place to save this file, then click export the FBX.

Textures

Although Unity-chan comes with textures, they need to be prepared into a format for use with Engage.

You can download the prepared textures here.

There is another tutorial on how to create these yourself here. We recommend trying out after finishing this tutorial!

Setting up the costume in Unity

If you haven't already, set up Unity by following this guide.

The Engage modding template is also required.

Making a fresh project

Open the Unity Hub program.

Click the blue + New Project Button in the upper right corner.

image

Then, choose the Engage Mod (Cobalt).

image

If you don't see this option, make sure you've installed the project template, and completely quit the Unity Hub once after doing do.

In the right side panel, choose any Unity organization that you're part of, and give the project a suitable name.

image

Then click + Create Project.

This make take a few moments. You should see some loading dialogs show up as Unity opens up and prepares your project.

Once Unity is done, you should see something like this:

image

This is the sample scene. Notice that there is an Alear model in this SampleScene.

Camera controls

You can make the camera look around by holding the right mouse button and dragging.

While still holding the right mouse button, you can move the camera in space by using the WASD keys.

You can pan the camera by holding down the middle mouse button and moving the mouse.

And finally, you can zoom in and out by scrolling your mouse wheel.

Try moving the camera to better frame Alear.

image

You can also automatically frame Alear. Click on her in the scene view, then press the F key.

Notice that clicking her also opens up something in the left Hierarchy view.

image

The Hierarchy Panel

Similar to Blender, we can open up these objects to see what's under them.

Click on the triangle next to uBody_Drg0AF_c051 to twirl it open.

image

Then, twirl open meshGP.

Click on Drg0AF_c051_Dress and notice that Alear's clothes are now highlighted orange in the scene, and the right Inspector panel also changes. Try clicking on a few other things in the Hierarchy window to see how they change.

image

You can make the inspector panel wider by putting your mouse at the edge of the panel and dragging outwards.

The items that show up are components that the objects have. We will be using the Inspector to set various properties for our Unity-chan costume.

Bringing in the Unity-chan FBX file

In your operating system, open up the folder where you exported the Unity-chan costume FBX file.

Drag and drop it into the Assets area. This will put it in the Assets folder.

Note that Unity makes a copy of this FBX file for the project - your exported FBX file will still be where it was at previously.

After the copy, you will see something like this. In my case, my FBX was named unity_chan_costume, so that's the name it has taken here.

image

Now, click and drag this FBX into the Hierarchy in a blank area.

You should end up with something like this

image

It's expected that your costume will be a little shorter than Alear, but if it's huge or a miniature, make sure you exported it from Blender with a 0.01 scale.

If your model looks like this or is otherwise rotated, make sure you didn't apply the Transform on the the uBody_Base0AF_c000 object. It must have an X Rotation of 90 in Unity to work properly in the Unity project when it's being exported.

image

Now, click on the red arrow and drag to the right a bit to move the Unity-chan model.

image

T costume looks grey right now. This is because we haven't set up the materials for it yet.

Material Setup

Select the Unity-chan object in the Hierarchy and twirl things open until you see meshGP and the costume pieces we put together.

Click on Hoodie first. Scroll down until you see Hoodie Zip (Material) and Hoodie (Material).

image

Notice that it's using the Universal Render Pipeline/Lit shader.

When importing an FBX, Unity sets it to use Unity default shaders. We'll need to use the Engage shaders. Let's check what Alear is using.

Click on Alear's Drg0AF_c051_Dress in the Hierarchy and scroll down to see its Material. image

Notice that the Material is using the CustomRP/Chara/CharaStandard shader.

Select Unity-chan's Hoodie again, and for Hoodie Zip, click the Shader dropdown.

image

Type CharaStandard in the search box.

Don't worry if it shows that there's a compile error - that can happen for older versions of the template. Click to select it.

image

Now do the same for the other Hoodie material.

Check the scene view and notice that it already looks a bit different than before.

image

Do the same Shader changes for the Shirt and Shorts.

Now, do the same for uBody_Base0AF_c000_Skin. After you're done, click on a blank space in the Scene View, and then click on the Skin again to refresh its inspector. Twirl open the material settings if it isn't open, and choose the Skin preset.

image

Wait, where did these Material names come from?

Back in Blender, select the Hoodie, then click on the Materials icon, which looks liked a red checked ball.

image

Notice that Hoodie and HoodieZip are the materials here. You can check what the other objects are using for their materials as well.

Applying the textures

In the Project view, in the Assets folder, right click and choose Create -> Folder. Name it Textures.

image

In your operating system, locate the Unity-chan texture files, and drag and drop them into the Textures folder.

image

Now, select the Hoodie object, and scroll down to the Hoodie material.

First, let's clear the default grey color that Unity gave this material.

Under Primary Maps, click on the grey rectangle that has an eyedropper, next to Albedo.

image

Choose the maximally white color.

image

Now, drag and drop Hoodie_Albedo into the square next to Albedo.

You should now see something like this in your Scene View now. image

Do the same for the Multi Map and the Normal Map, putting their corresponding Hoodie textures in the right slots. image

Notice that even after doing so, the Hoodie doesn't seem to have the same shadowing as Alear does in the Scene View.

image

For the proper shading effect, we need to apply the Ramp textures.

Click on Alear's Drg0AF_c051_Dress again, and scroll to the Mt Dress material and note the two Ramp slots. If you don't see anything in the slots, make sure you didn't scroll too far into the Mt Reverse material section.

image

Click on the little circle next to the Toon Ramp texture preview to see what it is called. It is called Gradients Dress.

image

Do the same for the metal ramp. It is called Gradients Metal.

image

Now that we know their names, click on the Hoodie, and scroll to the Hoodie material.

Click the little circle for the Toon Ramp, and type in Gradients Dress and select it.

You should see a change immediately for the Hoodie in the Scene view.

image

Do the same for the Toon Ramp Metal. You won't notice any changes since the Hoodie doesn't have and metal, but it's still good practice to set the texture here.

Now, repeat all the same steps as above for the Hoodie Zip material on the Hoodie. image

Click on the Directional Light in the Hierarchy, and find the Transform section in the Inspector. image

Hover your mouse over the white X for Rotation. Drag it around a bit to move the light. Your zipper should glean as the light changes, as if it's metal.

image

Reset the X rotation back to 50 after you're done.

The other clothing Materials

Now, change the materials similarly for the Shirt and the Shorts, setting the Albedo to pure white, filling the texture slots, and selecting the toon ramps.

For the Shorts, note that the material it uses is called Skin, so give it the Skin textures. Be careful not to use MtSkin here.

image image

MtSkin

MtSkin has a few different settings compared to clothing pieces. The Rim Light settings are different, the Albedo isn't white, and it also uses a different Toon Ramp, among other things.

There's too many things to set individually, so we'll take a shortcut, and copy Alear's Drg0AF_c051_Skin Mt Skin material settings onto uBody_Base0AF_c000_Skin's skin material.

First, select Drg0AF_c051_Skin and scroll to Mt Skin.

Click the three little dots in the corner of the Material, and choose Copy Material Properties.

image

Now, select Unity-chan's skin, and choose Paste Material Properties.

image

This is already looking better, but there's some shading where Alear's clothing usually covers her legs. image

To fix this, let's change the textures to the ones in the Textures folder, which is a set of community-created skin textures without any sort of extra shading.

Click on the little circle next to Albedo, and choose MtSkin_Albedo image

Do the same for the Multi Map and Normal Map.

You should end up with something that looks like this.

image

Now, we are done with the material settings.

Update When Offscreen

Select Hoodie, and under Skinned Mesh Renderer, Find the Update When Offscreen option.

Check it so it's on.

image

Without this step, sometimes the costume may become invisible in-game.

Do the same for the rest of the objects under Unity-chan's meshGP.

If you shift-select multiple objects, you can set this property for all of them at the same time. image

Making a folder for the costume

We will now prepare the Unity-chan costume for use in Engage.

First we will inspect how Alear is set up.

In the Project window, twirl open folders until you can see Assets/Share/Addressables/Unit/Model/uBody/Drg0AF/c051/Prefabs. This folder structure is the path where the game expects its models to be.

image

If you click on the Alear body in this folder, you will the Inspector update to show information about this Prefab Asset.

image

If you double click it, you will enter a special view where the background becomes dark blue, and only this prefab is visible.

Prefabs exist separately from scenes, and we will make a Prefab Asset for Unity-chan that will be the actual costume.

image

To exit this view, click the back arrow < in the Hierarchy window.

image

First, we will make a similar folder structure for our Unity-chan costume by mimicking what Drg0AF has.

Start by making a new folder under uBody. You can right-click in the empty area next to Drg0AF and choose Create -> Folder.

image

Name this folder Unity0AF.

Then, make a folder named c000, and under that, Prefabs. Note that you don't need to make a Model folder.

The full resulting path for this folder will be Assets/Share/Addressables/Unit/Model/uBody/Unity0AF/c000/Prefabs

You hierarchy should look like this now:

image

If you mistyped a name, you can right-click on a folder and choose Rename to rename it.

Creating a prefab by dragging an object

Now, drag in your Unity-chan costume from the Hierarchy window into the Prefabs folder. When asked what you want to make, choose Original Prefab. image

Notice that this prefab took the name of the object from the scene.

image

Now, right-click on this prefab, and rename this prefab to be uBody_Unity0AF_c000. The name may look cut off, but once you press Enter, the new name will be reflected in the inspector.

image

Setting the addressable path

Now, we need to make this prefab something the game can load.

In the upper right corner, of the inspector, there is a box named Addressable.

image

Check the box. This will give the Prefab Asset a path based on the folder structure we have constructed.

Next, we will update it to match the expected format for Engage.

Go to the toolbar and find the Divine Dragon menu, then choose Fix Addressable Names Tool.

image

Once the window opens, click the button that says Fix Addressable Names. image

You will see a result that looks like this image

The Prefab now has the right path.

You can close the Fix Addressable Names Tool now.

Building the mod

We now need to output the costume as a bundle that Engage can use.

Next, go to the Divine Dragon menu again, and choose Divine Dragon Window.

image

You should see a window that looks like this.

image

Follow the instructions and set an sdcard path. I'll be using Ryujinx.

For the mod path, what is expected here is a folder that holds an Engage mod. You can make a new folder in your engage/mods folder called Unity Chan Costume. Then click "Browse for mod path" and choose this new folder.

In my case, I have something like this after the above steps: image

Check the Open output folder after build checkbox. And then finally, click the Build button. image

You will likely see a popup that says you have unsaved scenes. Click Save and Continue here. image

You should see a funny dialogue after that, showing

image

This step may take a while so wait a bit.

Finally, you should see a message showing that the build was successful.

image

Also, a folder showing "Switch" will pop up.

image

If you keep clicking deeper into the nested folders, eventually, you should see your Unity-chan bundle.

image

We are done with Unity for now, and now we need to make the XML files to make the costume available in the accessory shop.

Creating the needed MSBT and XML files

For this tutorial, we will be editing these files, directly with a text editor.

You can rip them from the game's files, from the Data/StreamingAssets/aa/Switch/fe_assets_gamedata folder.

AssetTable.xml
Shop.xml
Item.xml

If you want to skip this section entirely, you can copy the XMLs from the finished mod, and use your own Unity-chan bundle to check your work.

Writing the description for the costume (MSBT)

Go to your mod folder where you built the Unity-chan costume model.

Make a patches folder next to the Data folder, then create a new folder called msbt, then create a folder called message.

Then, create a folder called us, and then a folder called usen inside of that.

The full path is engage/mods/Unity Chan Costume/patches/msbt/message/us/usen.

Using your text editor, create a new file in that folder called accessories.txt.

At the end of all of this, the folder structure should look like this:

image

Inside of accessories.txt, put the following:

[MAID_UnityChanSunnySideUp]
Unity Chan Sunny Side Up

[MAID_H_UnityChanSunnySideUp]
A tutorial costume.

Making the costume an item: Item.xml

Next, we need to define an accessory Item that is associated with this costume.

In your patches folder, make a folder called xml`.

Then, put your Item.xml into the xml folder.

Now, open Item.xml, and use the Find feature to search for the text Name="アクセサリ" (アクセサリ is accessory in English.)

This will take you the section where the accessories are defined.

Scroll down until you find its <Data> section. Then, scroll down to the end of that section. In a vanilla game Item.xml file, AID_まもりのせいそう should be the last item, on line 1658.

Now, copy and paste this line and paste it as the last entry.

<Param Out="" Aid="AID_UnityChanSunnySideUp" Name="MAID_UnityChanSunnySideUp" Help="MAID_H_UnityChanSunnySideUp" NameM="" HelpM="" NameF="" HelpF="" First="true" Amiibo="false" Asset="" CondtionCid="" CondtionSkills="" CondtionGender="2" Gid="" Price="42" Iron="0" Steel="0" Silver="0" Mask="1" />

It should look something like this:

image

Notice how the Name and Help fields match the name and description we wrote in the MSBT file.

Make sure to save your changes.

Making the costume available in the shop: Shop.xml

Copy Shop.xml in your xml folder, and then open it.

Search for アクセサリー屋 (Accessory Shop).

Find the <Data> section, and under <Param Condition="M005" Aid="" /> (line 337 in a vanilla file), paste this line:

<Param Condition="" Aid="AID_UnityChanSunnySideUp"/>

It should look something like this:

image

Notice how this Aid matches what we defined in the Item.xml file.

Make sure to save your changes.

Telling the game how to use the costume on charaacters: AssetTable.xml

Copy AssetTable.xml into your xml folder, and open it.

Search for the string <Param Out="" PresetName="" Mode="2" Conditions="PID_ウマ;". In a vanilla file, this is on line 3581.

Then above that line, add the following line:

<Param Out="" PresetName="" Mode="2" Conditions="AID_UnityChanSunnySideUp;女装;!チキ;!竜化;" BodyModel="" DressModel="uBody_Unity0AF_c000" MaskColor100R="0" MaskColor100G="0" MaskColor100B="0" MaskColor075R="0" MaskColor075G="0" MaskColor075B="0" MaskColor050R="0" MaskColor050G="0" MaskColor050B="0" MaskColor025R="0" MaskColor025G="0" MaskColor025B="0" HeadModel="" HairModel="" HairR="0" HairG="0" HairB="0" GradR="0" GradG="0" GradB="0" SkinR="0" SkinG="0" SkinB="0" ToonR="0" ToonG="0" ToonB="0" RideModel="" RideDressModel="" LeftHand="" RightHand="" Trail="" Magic="" Acc1.Locator="" Acc1.Model="" Acc2.Locator="" Acc2.Model="" Acc3.Locator="" Acc3.Model="" Acc4.Locator="" Acc4.Model="" Acc5.Locator="" Acc5.Model="" Acc6.Locator="" Acc6.Model="" Acc7.Locator="" Acc7.Model="" Acc8.Locator="" Acc8.Model="" BodyAnim="" InfoAnim="" TalkAnim="" DemoAnim="" HubAnim="" ScaleAll="0" ScaleHead="0" ScaleNeck="0" ScaleTorso="0" ScaleShoulders="0" ScaleArms="0" ScaleHands="0" ScaleLegs="0" ScaleFeet="0" VolumeArms="0" VolumeLegs="0" VolumeBust="0" VolumeAbdomen="0" VolumeTorso="0" VolumeScaleArms="0" VolumeScaleLegs="0" MapScaleAll="0" MapScaleHead="0" MapScaleWing="0" Voice="" FootStep="Human_M" Material="" Comment="Unity-chan tutorial costume" />

It should look something like this:

image

Notice how we have set AID_UnityChanSunnySideUp in the Conditions, which matches the item we defined earlier. We have also set DressModel to uBody_Unity0AF_c000 with is the bundle name we defined in Unity.

When a character is wearing this costume, this condition will match, and the character will use the DressModel uBody_Unity0AF_c000.

Note that in this position in the AssetTable, this costume will be worn by the character even when she is engaged.

Make sure to save your changes.

Creating the needed MSBT and XML files (Astra)

For this version of the tutorial, we will be editing these files directly in Astra. If you have already set up the files manually, you may skip to here.

You will need a dump of romfs and Astra set up. This tutorial will not cover setting up a Cobalt project through Astra.

Creating the Accessory

Create your project and open the Accessory tab. Click on the ... icon left of the search bar and select Add New Item.

Screenshot 2026-08-02 170503

This will pull up a text box asking for the ID of the Accessory, enter AID_UnityChanSunnySideUp.

Screenshot 2026-08-02 170828

Creating the Accessory: Name

Once the AID is added select it in the list and set the Name field to MAID_UnityChanSunnySideUp and the Help field to MAID_H_UnityChanSunnySideUp.

Under each field, there should be a larger box where you can enter the text. In the name text box, type in "Unity Chan Sunny Side Up". Under the help text box type in "A tutorial costume.".

Screenshot 2026-08-02 171120

Finally, Set Mask to 1 and you may add a price or set Gender condition if desired.

Be sure to save your project.

Creating the Accessory: Shop

Next, we will add our accessory to the Accessory Shop. Under the Shop tab, there should be another tab label Accessory. Click it and there will be various chapter conditions. Open the M005 condition.

Click the ... menu of "Training Wear" and select Insert Below. This will add a new blank entry below Training Wear.

Screenshot 2026-08-02 171749

Open the new entry labeled "{unknown accessory}" and set the Item field to AID_UnityChanSunnySideUp. Leave Condition blank.

Screenshot 2026-08-02 171943

Be sure to save your project.

Creating the Accessory: AssetTable

Next, we will add our AID to the AssetTable. Open the Asset Table tab and search for "PID_ウマ". Click the entry then open the ... menu left of the search bar and select Insert Below.

Screenshot 2026-08-02 172256

Now search for "{unnamed}" to find the blank entry. Under 'Condition" select the + button and set the condition to be AID_UnityChanSunnySideUp. Add two more conditions for !チキ and !竜化, then set Mode to be 2.

Screenshot 2026-08-02 172603

Finally, set the DressModel to be uBody_Unity0AF_c000.

Be sure to save your project.

Expected mod file layout

After building your mod and setting up the MSBT and XML files, this is what should be in your mod's folder.

image

You may have some extra files in your data folder, such as catalog.json and catalog.meta. It's safe to delete those.

Now, you can start Engage and go to the costume shop, and equip the costume!

Testing your model in Engage

If your costume is missing from the shop, make sure you set up the Item and and Shop XMLs and they are in the right folders. If equipping the costume gives you a floating character head, make sure your bundle is in the expected folder.

This is a good start!

But the hood part looks weird, especially on characters with long hair like Alear where the hair passes right through.

For this tutorial, we'll delete the hood part of the Hoodie.

Quit Engage for now, and let's return to Blender.

Continued refinement of the model

Deleting the Hoodie

Back in Blender, select the Hoodie and enter Edit Mode.

image

Things are a bit cluttered, so let's temporarily hide everything else.

In the menu, choose to View -> Local View -> Toggle Local View.

image

Your viewport should look something like this now:

image

Now, alt-click on one of the edges in this ring around the neck part of the Hoodie.

image

Choose Vertex -> Rip Vertices, then Enter twice.

image

Now, select any vertex in the hood, and choose Select -> Select Linked -> Linked

image

Your selection should look like this:

image

Press the X key, and choose Vertices to delete these vertices.

image image

Use View -> Local View -> Toggle Local View and show everything again.

image

Exporting into the Unity project directly

If we export the FBX file directly onto the copy that Unity has in the Asset folder for the project, the Prefab will be automatically updated.

Back in Unity, locate your Unity chan FBX file in the Project view. It should be in the Assets folder where we first put it. Make sure you aren't looking at the prefab.

Right-click on it, and choose Show in Explorer for Windows, or Reveal in Finder for Mac. This will show where Unity's copy of this FBX is.

Exporting in Blender

Back in Blender, export your FBX and overwrite the on in the Unity project's Asset folder.

When you open Unity, the model should be updated automatically like so:

image

You can now build the project again from the Divine Dragon -> Divine Dragon Window -> Build

Now, we can check the costume again in Engage.

Checking the costume

The costume looks better now!

Next, we'll bring in the stocking and boots.

Preparing the stockings and boots.

While we'll be using similar techniques to what we saw above, we will now introduce more keyboard shortcuts to work more efficiently.

Back in Blender, make sure you're in Object Mode, and select the boots (named Bootes in the model).

Then use View -> Local View -> Toggle Local View to show just the boots. You can also use the / key as a hotkey for this.

image

For some reason, this model included the Hoodie horns as part of the boots object. Let's delete them.

Selection method: Select Linked with L key

We've used Select -> Select Linked -> Linked a few times, but there's actually a keyboard shortcut for this.

Enter edit mode, and hover your mouse over one of the horns.

image

Then press the L key to Select Linked.

image

Note that in the lower left corner, a set of options appears for selection. We can use the Delimit: Normal option, which should be selected by default.

Now, with the one horn still selected, mouse over the other horn and press L.

Both should be selected now.

image

You can use the X to delete their vertices now.

We will be left with just the boots.

image

Selection method: Select Box with X-Ray

Let's try to select the leg brace to separate it from the Bootes object.

Hover over it, and use the L key to select linked.

image

Notice that this only selected part of the brace. While we could use hovering and L to select the rest of the pieces, in this case, it will be faster to use the Select Box.

We can use the Shift-Space combo to bring up some quick options, including choosing the selection mode.

image

Then, click and hold the first option to see your choices.

image

If you aren't already using Select Box, choose it now.

Now, check if you are in X-Ray mode. If you aren't, use Alt-Z to toggle it on.

Then, draw a box around the leg brace.

image

You can orbit around the model to make sure you selected all the vertices.

image

If you didn't turn on X-Ray mode, you might see something like this where only the vertices that were visible from your selection angle, are actually selected. If this happened to you, make sure X-Ray is turned on with Alt-Z and select it again.

image

Shorcuts for separating and parenting

To separate out this object, you can use the P key. You can remember this as P for seParate.

image

Choose Selection, and you should see something like this.

image

Rename the Bootes.001 object to be Leg Brace, and move it under the meshGP object.

Last time, we used Object -> Parent -> Object to parent objects, but we can also drag-and-drop in the side panel.

Click on Leg Brace, then start holding the Shift key. Drag it on top of the meshGP object, and then let go of the mouse click.

image image

You should end up with something like this. Note that you are able to do this in both Object and Edit mode.

Analyzing symmetry in UV Maps

We will be using the UV map to help us prove that the boots are symmetrical. You can skip ahead to the next section if you aren't interested in this section.

In the top bar, find the label UV Editing. image

Click on it.

You should see something like this. If not, select the Bootes object, and enter edit mode.

image

Press and hold the Z key, and drag your mouse down in the direction of Material Preview, then release the mouse.

image

The left side is a view of the UV Map and the texture that is being applied.

On the right side in the viewport, hover over the tip of one of the shoes, and use the L key to select.

image

Notice how the corresponding parts of the UV Map light up along with the vertices you selected. The UV Map defines what part of the texture should be drawn onto what parts of the mesh.

Now, deselect the vertices by clicking off of the shoe. Then, on the other shoe, do the same L selection.

image

Notice that the same areas became highlighted in the UV Map.

This is because the UV Maps are right on top of each other, and mirrored.

To see this clearly, make sure you have X-Ray mode on, and select this part of the shoe with Select Box, and then the other side.

image image

Finally, with Mirror Mesh editing on, try dragging on side of the boots a bit.

image

This shows that the vertices and the textures are mirrors of each other.

Mirror Modifier

Since the shoes are mirror images of each other, this actually lets us take a shortcut when fitting the shoes.

We will keep just one shoe, fit that, and then mirror it afterwards.

One shoe will be easier to edit as we rotate around different angles.

Return to Layout mode in the top bar, enter edit mode, and Select Box one of the shoes. image

Then, delete it.

image

Now, go to the Modifiers tab, and click Add Modifier

image

Type in mirror and choose it

image

You should see something like this now. Notice how although one side has vertices, the other side does not.

image

Exit Local View with the / key if you haven't already.

The move the boots under meshGP.

image

Before fitting the shoes, let's also bring in the LowerBody parts.

Rest of the pieces of LowerBody

Unhide the LowerBody object, and then enter Local View (/).

image

Enter Edit Mode, and use the L key to select these parts.

image

Use P to seParate them out.

image

Return to Object Mode (you can switch back with the Tab key) and hide LowerBody, leaving only the legs and the Stockings.

image

Select ``LowerBody.001, and use `Tab` to enter `Edit Mode`.

Find the ring separating the Stockings from the legs, and Alt-click on one of the edges.

image

Last time we used Vertex -> Rip Vertices to separate the vertices, but we can also use the V key. To remember this, visualize the V as two lines separating and being ripped apart.

With the ring selected, press V and then Enter to confirm.

Then, use the L key and select the legs skins. Delete them with X.

image

You should be left with this.

image

Exit Local View (\) and return to Object Mode. Rename these objects to Stocking and Straps for now, and put them under meshGP.

image

Fitting the stocking

In Object Mode, select the Straps, Leg Brace, and Bootes one at a time, and use the H key to hide each of them them. (You can remember this with H as Hide 😊).

You should be left with just the Stocking. image

Shrinkwrap Modifier

The Shrinkwrap modifier makes it so that a mesh will try to wrap around another mesh. We will use the Shrinkwrap modifier to help us wrap the stocking around the leg.

Select the stocking and enter Edit Mode.

Go to the Modifier tab, and add the Deform -> Shrinkwrap modifier.

image

Nothing will change in the viewport yet.

For Wrap Method, choose Target Normal Project. For Snap Mode, choose Outside Surface. For Target, search for uBody and the choose uBody_Base0AF_c000_Skin. At this point, you will notice something changing in the viewpoint. For Offset, type in 0.005.

You should see something like this now:

image

Notice how the vertices are not matching where the stocking visually is now.

The Shrinkwrap modifier will try its best to wrap the stocking over the surface of the base body, without modifying the underlying vertices until the modifier is applied, which we will see later..

Now, we can edit the mesh with our usual tools to better position the mesh over the base body.

The stocking is a bit rotated compared to the Engage leg.

Make sure that the camera is facing straight on at the body by using the Navigation Gizmo

Use the A key to select all the vertices, then the R key to Rotate vertices to better match the leg angle. Click to confirm. Don't worry if this messes up the shrinkwrap temporarily.

image image

Then, use the G key to move it back to a better position.

image

There's still some parts of the shin showing. Use the Navigation Gizmo to switch to the side view.

image

Using the A key again to select everything, use R to rotate the leg to be more aligned, and then use G to move it back in place.

image image

Go into Object Mode again and move the camera around a bit to inspect your work. If you wish, you can lower the offset below 0.005 for a tighter fit with the leg, though too close and the leg may start clipping through and you'll have to make more adjustments.

image

If there are any parts of the base skin poking out, you can return to Edit Mode and move some vertices so that it'll fit better.

Don't worry if this part of the stocking stripes looks a little warped - one of the Straps pieces will cover it later.

image

When you're happy with the results, make sure you're in Object Mode, and go to the Modifier tab and for Shrinkwrap, click the down arrow that is next to the little camera icon. Then click Apply. If Apply is greyed out for you, make sure you're actually in Object Mode.

image

Now, return to Edit Mode for the Stockings, and notice that the vertices have actually moved to be in line with where the stocking is visually.

Testing the stocking

For the Character1_Reference Armature on the Stocking, change it to be uBody_Base0AF_c000, go to the Vertex Groups tab and delete the existing groups.

image image

Then, making sure you have the Stocking selected, use Robust Weight Transfer and Transfer Weights.

Select the Engage bones, and turn on Pose Position.

You should see something like this now.

image

If you aren't happy with the results, you can go back and adjust the fit of the stocking to your liking, but if you do, you must to retransfer the weights again.

Fitting the Straps pieces

Put the bones back into Rest position, and show the straps now by clicking its eye in the side panel.

image

In case you don't remember where the straps are supposed to go, here's a screenshot of the costume.

image

Jumping into UV mode for a bit and testing with the Mirror edit mode, we can actually see that the two larger leg straps are mirror images.

image image

Back in Layout mode, use Select Box and grab this leg strap. Make sure Mirror editing is on for the X axis

image

Checking for the side view, we can see it isn't quite aligned with the leg.

image

Use G to move it a bit,

image

Then R to rotate it.

In my case, even after my adjustments, orbing the camera around to the back shows some clipping into the leg here.

image

Using the Navigation Gizmo, set a view that's straight on the back, and use the S key to scale the strap up a bit.

image

Then use G again to move it back in place.

Here it seems like the strap is a bit loose in the back.

Using alt-click, select the loop here.

image

Then with propotional editing turned on (O key is the shortcut), try moving it closer to the leg while constraining on the Y axis with the Y key.

Depending on the size of your sphere of influence, you may find that the smaller bottom strap we aren't intentionally editing is also affected. To mitigate this, you can turn on the "Connected Only" feature for proportional editing.

image

Repeat this fitting on the front side of the strap as well.

image

And for the sides, you can use the Select Box and a move.

image

Repeat what we did above for the smaller leg strap.

Here is my before and after:

Front image image

Side image image

Back image image

Leg warmer

We can place this into a better position by selecting its vertices and using G to move them in place. Don't worry about it being perfect for now, as we'll be adjusting its position later after fitting the boots.

Before: image image

After: image image

Weight transfer and test

Do the usual steps for weight transferring, and then test out the fit with an animation.

image

If you see any spots peeking out that you don't like, you can adjust the mesh in Edit Mode, retransfer weights, and preview again.

Leg Brace

Show the leg brace again, and enter Edit Mode. image

Using the techniques we've covered, position, scale, and rotate the leg brace to your liking. Remember to use Y, X, and Z to constrain your edits as needed.

I ended up with something like this:

image

Do a weight transfer and check how it looks.

Fitting the "bootes"

Unhide the boots, and go to the front view.

image

We can see that the bootes aren't quite aligned with her feet. We can quickly fix this in Object Mode, so let's try moving the shoe over the foot with G.

But something is wrong! Both boots moved together and now the other shoe is very off.

image

This is because by moving in Object mode, we moved the entire object, origin point and all.

Going back to the Modifier tab and to our Mirror modifier, for Mirror Object, choose our uBody.

image

Now the mirror will be what we expect no matter where the bootes' own origin is.

image

Checking in the side view, we can see the shoes are a bit too far back.

image

This can also be rectified with a move.

image

Looking at the front, the toes are sticking out a bit.

image

We can enter mesh mode, and switch to top view. Using Select Box, and making sure you have X-Ray mode turned on (with Alt-Z), select the toe tips.

image

With Proportional Editing on, lengthen the shoes a bit, using Y to constrain the move.

image

If the side of the foot is sticking out a bit, you can select a vertex and pull it out out a bit with constrained move.

image

Like so.

image

In my case, the bottom of the foot was also sticking out a bit, so I just moved the shoe down, using G and Z to constrain.

image

When you're happy with where the boots are apply the Mirror modifier, which will make the mirrored boot real geometry again.

image

Afterwards, delete the existing vertex groups and do the weight transfer steps.

If part of your stocking is sticking out of the boot, you can go to edit mode for the stocking, select the vertices that should be covered by the boot, and delete them.

For me, this black spot on the shot was the Stockings sticking out. image

image image

Now, adjust the leg warmers if you need to. If you wish, you can separate it our with P for easier manipulation without messing up the other leg strap pieces. Remember to transfer weights again as needed if you make adjustments.

image image

Here's how things look for our model now:

image

While we still have some pieces left, for now, we will move on to bringing this into Unity for a test build.

Apply the scaling for our new pieces.

Remember to export in Rest mode, with the right settings as described previously. If you have quit Blender since your last export, your settings will be reset.

Export over your FBX that's in the Unity project.

Prefabs and dealing with new mesh pieces

Going back to Unity, open your SampleScene if it isn't currently open.

Notice that unlike last time where the deleted Hoodie was immediately reflected in our model in the scene, this Unity-chan costume does not have our new parts.

image

However, if we click on the FBX file, the preview shows that indeed the new pieces are present.

image

Try dragging that FBX into the scene view.

image

Then click on the red arrow and put it next to your existing Unity-chan costume.

image

What's going on?

Twirl open both Unity-chan object meshGP objects.

image

From the hierarchy, we can see that the old prefab indeed doesn't have any of the new pieces. This happens because prefabs does not automatically update to include new pieces.

While it is possible to edit a prefab manually to add in the new pieces, it's often just quicker to remake the prefab entirely.

Navigate to Assets/Share/Addressables/Unit/Model/uBody/Unity0AF/c000/Prefabs/uBody_Unity0AF_c000.prefab in your Project window, and delete the prefab. If it was present in your Scene, you should also delete it there.

We have a new material to edit here as well, the bootes. Apply the textures the same way we covered before.

Then, repeat the prefab creation steps with the fresh FBX file.

When you're ready, build the model and load up the game.

Here's what we have now!

Now, let's finish off the rest of the costume back in Blender.

Arm wraps

Back in Blender, show the UpperBody object.

image

These could be part or a Shirt or just arm wraps, but since we already have a Shirt object, we'll refer to them as arm wraps here.

Checking in the UV editing mode, and using L to Select Linked, we can see that the two arms are using the same UVs, just flipped.

image image

The wrist ribbon is also its own part selectable with L, and is also symmetrical. image

And finally, confirming with symmetrical editing on and doing a move, we can see the arm pieces are symmetrical.

image

We'll delete one side, fit it, and then use the Mirror modifier to bring back the other side.

First, box select one side (make sure X-Ray is on), and separate it with P.

image

Select the new object created and hide the old one.

image

Like with the stocking, we don't need any of the skin.

Try using Alt-click on an edge to select the ring that defines the boundary between the hand and the sleeve.

image

Unfortunately, because this is not a clean ring, Alt-click will not do a clean selection for us here.

However, we can use the features of Select Linked to help us here.

Hover your mouse over the hand and press L.

Everything will be selected, but notice the Select Linked panel in the bottom left.

image

Press the UVs button. Now, only the back of the hand is selected!

image

Orbit the camera, and L above the palm of the hand.

image

But, how did this work? Before deleting the hand, jump back to UV mode for a moment. Let's check what the UV setup looked like for the arm.

Notice how the hand (it looks like a hand shape) is a separate island from the sleeve.

image

Also note that part of the sleeve is also selected. We need to be careful about how we do this deletion.

Return to Layout, and make sure you're in Edit Mode.

image

With this selected, try pressing X then choose Vertices. Pay attention to the sleeve.

image

Note how part of the sleeve disappeared!

image

Undo the deletion, and this time use X but choose Faces.

image

The sleeves survived the deletion this time.

image

There are a few stray pieces of the hand - delete those as well.

image

Next, we'll separate the arm wrap part and the hand ribbon.

We can do this without needing to select anything at all by pressing P then choosing By Loose Parts.

image image

Go into Object Mode, and hide the ribbon for now.

image

Then, add a Shrinkwrap Modifier to the arm wrap piece.

image

Use these settings:

image

Don't be alarmed if the arm wrap looks messed up right now. Once you move the mesh over the body, it will start wrapping around the arm.

Remember to check different angles!

image image

We can also move the sleeve into further up the arm a bit.

image

Checking in X-Ray mode, you can make the fit even better.

image

Feel free to adjust the Shrinkwrap Offset to taste.

Do a check in Object mode, and when you're done adjusting, apply the Shrinkwrap modifier.

image image

Now, show the wrist ribbon again.

image

And checking from multiple angles, put it around here, and make it fit to your liking.

image

Back in Object mode, select the arm wrap and ribbon, and use Ctrl-J to join them. If Ctrl-J didn't work, make sure your mouse is hovering over the viewport, and not the sidepanel. image

Rename the resulting object Arm Wrap, and Shift-drag it into the meshGP object.

image

Add the Mirror modifier. Double check that the symmetry is what you expect.

image

Depending on how you moved and joined your objects, it's possible the origin is not in the center. If you see something like below, you can choose the Mirror Object to be the uBody.

(Unexpected symmetry) image

(With the fixed applied) image

Now, apply the Mirror modifier.

image

Do the usual of clearing out the unneeded vertex groups, setting the right armature, and doing the weight transfer.

image

Your arm wraps should be attached nicely now.

Choker

Now for our last clothing piece.

Unhide the UpperBody piece.

image

In Edit Mode, use L to select the choker piece. Then use P to separate the selection out.

image

Hide the UpperBody, and rename the new piece Choker and shift-drag into meshGP.

image

Enter Edit mode and place it how you like. Remember to use X, Y, Z to constrain while moving and scaling.

We'll end up with something like this: image

Do the usual weight transfer steps, and check the results in the animation.

image

Outlines

To make sure outlines look proper on the costume, we need to apply their scales and give them a red vertex color.

Here's how your model will look in game depending on the lack or presence of vertex colors.

Left: No vertex colors. Right: Red vertex colors vertex color compare

Notice how much stronger the outlines are on left side versus the right.

First, check that all the pieces for the costume have their scales applied.

For example, here we have these Straps objects the scale is still 0.010.

image

We can apply the scale with Ctrl-A, and choosing All Transforms.

image

First, let's check out some vertex colors.

Select the skin, and go to Vertex Paint mode.

image

Then, press and hold Z, and choose Solid mode by moving your mouse to that option and letting go of Z.

image

Vertex colors are a color value assigned to vertices. It is separate from textures.

If you go to the Data panel and scroll down, you can see the Color Attributes section. image

Try deleting the Col item.

image

And you will see the colors have disappeared. Undo it. This is where the color information lives. image

To add your own color attribute, to an object's Color Attribute section, and click the + Button, and use these settings

image

The color I chose is hex value #862222.

image

After that, your objects will have vertex color. image

Some Unity-chan mesh pieces will already have an attribute there.

image

You can safely delete them and continue. Do a rebuild and check in Engage how it looks.

Final Result

Congratulations on fitting the costume! Make sure to share your screenshots in the Discord.

Fire Emblem Engage_026-07-16_00-16-09

Next: Texturing Tutorial

We have a tutorial here on how to create textures for use in Engage.

Next: Spring bones tutorial

We have a tutorial here on how to add physics to costumes in Engage.

On merging objects

We've kept the different pieces of our costume separate objects for now, for easier adjusting and editing. However, if you inspect the Alear sample model in Unity, you'll see that there aren't that many mesh pieces.

image

When you're ready to make a final build, you can join all the pieces together for the Unity-chan costume. This will help with performance and is how most game costumes are structured. Since this will be a change in the meshes, you will need to remake the prefab.

Where to go from here

Try using the costume on other characters and in battle! If you notice anything off, you can always come back and adjust.

If you move parts of the costume to fit better, you should re-run the Weight Transfer so that clothes will move as expected.

The Textures folder also includes the textures for Unity-chan's headphones, if you want to add that finishing touch.

If you find the outline effect to be too strong on certain parts of the costume, you can try adjusting the outline scale for that material - but beware the objects sharing the material will all be affected. You can also try different shades of red for the vertex color!

Special thanks

Thanks to Redundo being the first to follow this guide and uncover quite a few bugs! Also thanks to Bad for additional testing.

A note to any editors

This is a Diátaxis style tutorial. Please read through the page before making any edits.

TODOs and future guides!

oBody Creation.

How to create models for use in the overhead battle map.

Spring bones section

Costume parts that move like hair.

Copy the spring bones from Merrin's tail.

Multi creation

How to create a multi texture for a model.

Clone this wiki locally