Blender Addon: Convert Mmd's Vmd Motion to Daz or CC3

Blender Addon: Mmd’s Vmd Retargeting

This blender addon will convert motion from mmd’s .vmd file onto Daz or CC3 models, with or without mmd model.

Demo Video

Download

https://blendermarket.com/products/vmd-retargeting

Github

This github repo is for issues and translation.
https://github.com/butaixianran/Blender-Vmd-Retargeting

Version

1.1.4

Screenshot

basic

Feature

  • Import motion from vmd file without a mmd model
  • Or retarget body motion from a mmd model.
  • Import body, eyeball, facial, viseme and camera motion separately
  • Ignore feet rotation when Daz/CC3 character is on high heel.
  • Set interpolation and easing as you wish
  • Set camera height offset or rotation rate if needed
  • Set arm rotation rate, to prevent hands poke into chest.

Install

  • Install the .zip file you get
  • Search “Vmd retargeting” in your addon list and enable it.
  • In viewport, press “N” to display tool panels, select “Vmd Retarget” panel

If you are new to blender and don’t know how to install a blender addon, search: “blender install addon” in google.

How to use

Prepare a character

This addon supports:

For characters imported by fbx, cc3 model should work too. But for daz model, retargeting facial and viseme motion won’t work.

Prepare CC3 model

No preparing is needed.

Prepare Daz model

Diffeomorphic daz importer is complex. But we just need click a few buttons to get it done.

You need to know the basic of how to setup and export a daz model for Diffeomorphic daz importer.
Check its official tutorial for that.

And when importing model to blender, you need 3 things:

  • Merge all armatures into body’s armature
  • Face Unit morph and Viseme morph
  • Make all bone poseable.

The easiest way for these, is importing a character by click “Easy Import Daz” button.
By default, it already checked Merge Rigs for you.
So, you just need to check “Face Units” and “Visemes”, then import.

After importing, go to “Finish” section of Diffeomorphic daz importer’s panel. Click “Make All Bones Poseable

Now, your daz model is prepared.

Prepare a vmd file

No preparing is needed in most cases.

But, there are some old or weird vmd files don’t use normal bone names or file structure.

If you imported a vmd file like this onto Daz or CC3, your model gonna jump from one pose to another, like a robot dance.

For those vmd files, just open MikuMikuDance, load a TDA model, and load this vmd file on it, then re-export it as a new vmd file.

This new vmd file will work.

Import vmd

It is pretty simple:

  • Select your character’s armature
  • Select a vmd file
  • Select your model type(CC3 or Daz)
  • Check which part you’d like to import
  • Make sure your active armature is your Daz or CC3 model, Click “Execute”, done.

Each part will be an action wraped into a strip on a track, in NLA editor.
So, it won’t mess up your timeline, and you can move or delete them like clips.

Options

Move your mouse onto those operators(button, checkbox or list), will display a useful tooltip.

High Heel Tooltip:
tooltip_high_heel

Camera Height Offset Tooltip:
tooltip_height_offset

High Heel

check to ignore rotation on feet.

Body Motion

Tracks

Body motion is separated into mutiple tracks.

For example, mmd doesn’t have motion layers, so they use mutiple bones which does the same thing, to simulate motion layers. And we handle that by adding this bone’s motion into a real new layer.

For now, we only do this for: center and groove bone’s location.

IK

CC3 and Daz model don’t have IK by default. So this addon creates IK for legs when importing body motion from vmd file.

Rotation over 180 degree

MikuMikuDance treats rotation 180 degree and -180 degree as same thing. So, a bone with a rotation key frame 170 degree and another key frame -170 degree, won’t rotate 340 degree between them, just 20 degree.

For blender, that gonna be a problem.

This addon handled some cases like this for you, but not all of them. So, if your model get different rotation direction with mmd, you may need to retarget this motion from a mmd model. In that way, addon gonna retarget very frame, not just key frames. So, there is no issue like this.

Arm rotation rate

Daz/CC3 has different arm length with mmd model. So, if mmd model puts hands on chest, they always poke into body when on Daz/CC3 model.

Set forearm rotation rate to 0.8 will fix that in most cases.

Arm rotation rate only works when importing motion from vmd file

Pick a mmd model as Source

If you picked a mmd model, addon will ignore body motion from vmd file and retarget motion from your picked mmd model.

Eyeball and morph motion are still loaded from vmd file.

You need blender mmd tools to import a mmd model into blender:
https://github.com/UuuNyaa/blender_mmd_tools

When importing a mmd model, uncheck rename bones! We use its japanese bone name to map bones.
uncheck_rename_bones

Then import your vmd motion onto this mmd model by using mmd tools, not this addon!
Which is: select your mmd model, go to File menu->Import->Vmd file, and select a vmd file.
Now, your mmd model should has a motion on it.

Then select your Daz or CC3 model, use the pick tool of “Source” from this addon’s panel, pick the armature of your mmd model. Not the empty parent!
mmd_armature

Make sure you select your Daz or CC3 model, then click “Execute”.

It will retargeting every frame of evey mapping bone’s final rotation from mmd model, not just key frames, and doesn’t need an IK bone on Daz/CC3 model.

Eyeball/Facial/Viseme

You can only import the part you need.
For example, you may just need the viseme part of a dance motion, to create a 3D music video without dance.

CC3 doesn’t come with viseme morphs, it’s a feature for iClone. So, this addon uses facial expression morphs to simulate viseme. It won’t as good as real viseme morphs, and it won’t move teeth.

Interpolation/Easing:

You can find examples from https://easings.net/

This setting won’t affect camera motion. Camera motion is always linear.

Camera Rate/ Height Offset

Daz/CC3 model has different model size with mmd model. So, camera motion need to be adjusted.

Default value works fine for almost every case.
But if your model is a CC3 character with high heel, you need to move camera up with 8cm.

Debug mode

Debug mode will print down everything in console log. It gonna slow down the retargeting a lot.

So only check it when importing a vmd file with a single pose.

Limits

Shoulder Rotation

There are 3 shoulder bones on a mmd mode: shoulder, shoulder P, shoulder C. This addon ignored shoulder P and shoulder C.

Twist Bone

MMD model also comes with twist bones. They are used only in a few vmd files. They are not handled when importing with vmd file.

So, for these kind of vmd motion, you need retarget body motion from a mmd model.

Prop motion

This addon won’t handle that.

1 Like

Added commercial tag.

Add a video tutorial about how to convert motion from mmd model to Daz model:

Updated to ver 1.1.4, fixed some important bugs.

make sure you updated to latest version

Updated to 1.5.0, now it supports Blender 3.1, also handled twist bones, so Natsumi San’s vmd motion can be converted nicely.

Created a tutorial video for this:

Updated to 1.6.0, Now, it support Daz’s official Daz to Blender bridge DTB. But it need the updated version for Blender 3.x.

Check this project’s Readme from Github for more infomation.

Now, it’s 1.6.4, here is the change log:

1.6.4

  • Update UI with boxes
  • Go to Object mode when executing to prevent user run it in Edit mode
  • Remove Debug mode button, add a label for addon version

1.6.3

  • Set “ぺろっ” and “口角上げ”'s converting rate to 0.5, to make a better smile.
  • Handle “shift_jis” error to show a msg.
  • Fix an issue that can not import camera when using DTB character.

1.6.0

Update:
1.7.0

  • Now it supports CC4