unity-MMD制作


title: unity-MMD制作
categories: Unity3d
tags: [unity, mmd, 面部表情]
date: 2019-01-11 15:29:18
comments: false

  • MMD大体制作流程.
    1. 3d软件建模(如: 3dmax), 展开uv, 导出 .x 文件 (DirectX 文件) (其实也可以导出 .obj 文件)
    2. pmx editor 导入 .x 文件, 绑定骨骼, 刷权重. 导出 .pmx 文件
    3. mmd 导入 .pmx 文件, k动作, 渲染视频. 可以导出 .vmd 动作数据文件. (以后只要是相同骨骼类型, 都可以用 mmd 导入 .vmd 文件套用动作)
    4. 导入引擎部分
      • unity: unity 导入mmd插件 MMD4Mecanim, 然后将 pmx, vmd 文件丢进工程, 用 MMD4Mecanim插件自带的 .asset 文件复制一份, 然后把 pmx,vmd 文件指定好, 再指定好导出的 fbx 路径, 即可生成 unity 可以运行mmd. (参考: [unity 使用 MMD4Mecanim](#unity 使用 MMD4Mecanim))
      • ue4:

前篇


win10 需要装的运行库

DirectX End User Runtime.exe, Visual C++ 2008.exe, Visual C++ 2010.exe


TODO:

  • 测试mmd动作是否能套用

unity 使用 MMD4Mecanim

相关参考:
使用步骤
  1. 导入 MMD4Mecanim.unitypackage 插件到unity中.

  2. 下载过来的mmd模型一般会是一个文件夹包含pmd或者pmx文件和一堆贴图文件,注意不要改变文件夹结构,直接将文件夹放入unity工程里,如图,这时候mmd4插件会自动识别 pmxpmd 文件生成一个对应名字的 .MMD4Mecanim 文件

  3. 选中这个.MMD4Mecanim文件之后,就能在inspector窗口里看到模型使用条约,我们都勾选上并点击同意,之后就可以看到转换界面了,点击process,稍等一会儿,模型就生成了。生成的模型会在对应的pmx或者pmd的同一个文件夹下,并生成一个Materials的文件夹,里面是这个模型的所有材


提取 pmx 文件中的 obj 模型资源

  1. pmxEditor 打开文件, 导出为 obj 即可

导入 pmx 到 max


pmx editor

给 模型 绑骨骼, 刷权重, 指定材质贴图


表情

顶点,材质 操作

把要操作的顶点材质显示出来, 再进行才做


预览操作

pmx view 窗口使用编辑器的. 要测试必须点 T 弹出新窗口 TransformView 操作


骨架,刚体 复用
  1. 将别人做好的pmx, 删除所有的 顶点,材质,表情, 保留 骨架,刚体, 另存为 aaa.pmx 文件
  2. 在做好的模型放入pe 中, 将 aaa.pmx 拖入到 pe 中, 然后选择 追加, 然后绑骨骼, 刷权重.

显示选中骨骼权重

  1. 选中模式只能选中 骨骼
  2. 显示所有骨骼
  3. 显示模型顶点
  4. 直选中 正面 能看到的顶点
  5. 选中骨骼时, 显示该骨骼刷过的顶点, 红色为权重1, 蓝色为权重0
  6. 只显示 选中骨骼刷过的顶点, 其余没刷过的不显示

mmd

给 pmx editor 导出的 模型制作动作, 视频


导入vmd动作
  1. 选中需要导入的模型

  2. 拖入动作文件

  3. 点击 play 就可以播放动作了


操作对象

由于mmd里可以导入多个 pmx 文件(也就是多个模型), 所以操作每个模型必须要选中状态下才能操作.

这里有个快捷切换 相机 与 当前对象


渲染
  • 需要注意的点

    • 如果有 天空盒, 天空盒一定要第一个渲染. 这个概念和 unity 中的渲染顺序一样

教程

ray

相关教程

  1. 拖入 ray_controller.pmxray.x

  2. 拖入天空盒 Sky with box.pmx (可以是其他天空盒)

  3. 主角指定 Main 里的特效 如: main.fx

  4. EnvLightMap 下的天空盒指定 fx 如: Sky with lighting with rotation.fx

  5. 最后渲染的时候要关于 地面阴影,抗锯齿,mipmap


显示/隐藏 材质


加入外灯光

要在 MME 中把灯光的 main,material 关掉, 这样才不会把 灯光实体及其投影 绘制出来. 不会影响灯光对别的物体的效果.


设置shader (.fx)

使用法线贴图前置条件
  1. 一定要现在 pe 中, 把所有材质球的高光贴图干掉

  2. a


绑定物体

可以将 对象a 绑定到 对象b 的某根骨骼下座位子节点, 跟随运动. 比如讲某个点光源帮到人体部件上

比如: 讲 PointLight 绑定到 planecenter 骨骼. 然后 OP register 确地绑定


复制参数
  1. 对象a 添加到场景, 调好参数 (每调一个参数都 register 一下). 在选中对象a的模式下 然后复制 对象a所有帧数据 到剪贴板. (选中所有属性的帧数据, ctrl + c)

  2. 添加 对象b (和对象a同一个pmx), 在选中对象b的模式下 然后把 剪贴板中的 帧数据 粘贴到 对象b 上. 然后可以在调一下 对象b 的 位置或者其他参数.


布料

貌似使用的软件都是 c4d

教程


pmx 转成 fbx

以下两种方式都还有缺点就是关联不上贴图. 暂时未知. 两种方式的最终都是调用 pmx2fbx.exe. 调用指令为
pmx2fbx.exe pmxPath vmdPath

方式1

使用unity插件 MMD4Mecanim, 这种方式可以生成材质球. 复制一份这样的文件 MikuV4X_GuitarFront.MMD4Mecanim.asset , 然后将 pmx 文件拖进去, 再指定 fbx 导出路径, 点击 Process 即可. 会生成 fbx,Materials 及 几个数据文件

方式2

直接使用指令生成. pmx2fbx.exe pmxPath vmdPath


3dmax to pmx editor

pmx editor 能导入的文件是 .x 文件, 也就是 DirectX 能识别的文件.

方式1 (建议)

max安装一个插件 Axe_free_v2.2.5 for2015-2018.rar, 解压后把文件拷贝到3DS max安装目录的 stdplugs 文件夹即可,重新启动3ds max,导出时就可以看到选项中有direct .X格式了。

方式2

有点绕路. 先导出 .obj 文件, 然后把 obj文件 导入到 Metaseq.exe(水杉), 然后导出 .x 文件
可以参考: https://www.youtube.com/watch?v=n_1cJTHa6pc


Ray-MMD


插件开发


视频压制

可以用 pr, 也可以用 vegas. 貌似推荐用 pr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蝶泳奈何桥.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值