
所需插件:
MMD4Machine :http://stereoarts.jp/
FBX Exporter : Package Manager
Unity Recorder : Package Manager
先上效果图:

在Humaioid下,使用相同anim跳起的极乐净土,左边是MMD4Machine导出的模型,右边是Blender原模型(未添加动态骨骼所以很僵硬)
原理:
使用官方的Unity Recorder插件录制成Humaioid类型的动画文件,原vmd动作由MMD4Machine负责导出
准备工作:
插件MMD4Machine能够导出带动作的FBX模型文件
首先设置下FBX的Import Setting,找到Rig项中的Animation Type设置为Humaioid并设置Import Animation

设置完成后,选择FBX里面的所有anim格式的文件
用Ctrl+D导出动作文件
这时可以查看一下导出的Anim文件大小,比原VMD文件体积大了好几十倍

导出步骤:
1.将Fbx模型拖拽到Hiercrchy面板去(使用一个标准的Humaioid人物模型并拖拽到场景去)
移除掉无关的脚本,如果开启了动态骨骼录制的时候会把物理动画也录制了(一般不通用没必要开)
创建一个Timeline,将刚才导出的anim放入到timeline中去

2.设置模型的Animaotr组件中Culling Mode为Always Animate,避免超出摄像机动作被裁剪

3.使用Unity Recorder录制,录制时场景变成运行态自动播放Timeline,播放完毕手动STOP停止录制(也可修改Recording Mode设置录制时间)

4.得到新的Anim文件

把新的anim导入到模型的Animator中,这里直接替换掉controller里的motion
5.回到Hiercrchy面板,对使用了新anim的模型GameObject
右键-导出FBX ,Only Animation,完成,将导出的FBX设置下Animation Type为Humaioid

结论:

当然也可也使用其他模型录制动作,可以去掉一些没用的动作(这里用了个白模录制)

导出的Humanoid极乐净土动作,可以直接给所有人型模型使用

事实上经过测试并不是所有模型都能正常使用,我这里是直接使用blender格式的模型,经过数次使用感觉还是没什么问题
使用方法:
模型和动作的Animation Type都需要设置为Humaioid,另外模型的Avatar选择Create From This Model就行了
其他问题:
为什么要格外录制一个Anim不直接使用原Anim进行导出
经过测试,如果使用原Anim导出FBX会出现动作错乱,根本无法使用
不过感兴趣的话也可以研究下为什么不能使用,应该可以省很多步骤
相关资源:
链接:https://pan.baidu.com/s/1EZVB8ZXHuNLcB-oMj9oiTA 密码:ptew
插件下载:https://github.com/cnscj/MMD2UnityTool
使用方式:右键带动作FBX数据->MMD2UnityTool->Export Fbx(With Anim) To Humanoid Fbx
参考文献:
Unity使用FBX Exporter导入导出动画及FBX:
https://blog.csdn.net/f_957995490/article/details/115549986