unity-MMD制作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yangxuan0261/article/details/86560228

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.
      • ue4:

前篇


win10 需要装的运行库

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


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 的 位置或者其他参数.


布料


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

猜你喜欢

转载自blog.csdn.net/yangxuan0261/article/details/86560228