mikumikudance 中文文档 下载 App

MMD 头发与布料物理参数 — 让角色的"动态"更生动

为什么头发和布料的物理最重要

在 MMD 里,物理效果 80% 体现在头发和布料上。

这篇重点讲头发和布料这两个主角。

头发物理的结构

一根头发通常由1-5 根小动力学刚体串联组成:

头皮固定点(运动学刚体)
    ↓ 约束(Fixed)
头发根(动力学刚体)
    ↓ 约束(Spring/Hinge)
头发中段(动力学刚体)
    ↓ 约束(Spring/Hinge)
发梢(动力学刚体)

每根动力学刚体之间用铰链或弹簧约束连接,这样头发就能"一节一节"地摆动。

头发物理不好的典型表现

问题原因
头发像钢针弹簧系数太大(硬),或约束类型是 Fixed
头发像果冻弹簧系数太小(软),阻尼不够
发梢不会摆发梢刚体被头刚体阻挡(碰撞组问题)
头发整体往下掉重力影响过大,或空气阻力为 0
静止时头发还在抖阻尼不够

头发参数调优

刚体层面(PMX Editor)

参数柔软的长发短而硬的头发
形状胶囊体(最适合头发丝)胶囊体或球体
半径头发丝粗细(0.02-0.05)同左
摩擦系数0.5-0.8(减少丝之间滑动)0.3-0.5
弹性系数0.0(不要反弹)0.0
质量0.05-0.1(轻)0.1-0.2(稍重)

约束层面(PMX Editor)

参数柔软长发短发/扎发
约束类型Spring(弹簧,有弹性)Hinge(铰链,硬一些)
弹簧系数(Spring)0.05-0.20.3-0.8
阻尼(Damper)0.02-0.080.1-0.2
允许角度范围大(45-90°)小(15-30°)

简单口诀:弹簧系数越小越软,阻尼越大停得越快。

布料物理的结构

一片裙摆通常由若干片平面网格组成,每片网格对应一组动力学刚体:

腰带固定点(运动学刚体,跟随腰部骨骼)
    ↓ 约束
上缘刚体(动力学)
    ↓ 约束
中缘刚体(动力学)
    ↓ 约束
下缘/摆尖刚体(动力学)

布料刚体通常是长方体(Box),水平方向有一定宽度。

布料物理不好的典型表现

问题原因
裙子像纸板弹簧系数太大,或布料网格太少
裙子飘动太夸张弹簧系数太小 + 空气阻力低
裙摆卡腿腿部刚体碰撞体积太大
裙子抖动阻尼不够
裙子"粘"在身体上重力影响不够或碰撞组设置问题

布料参数调优

刚体层面

参数飘逸的长裙挺括的短裙
形状长方体(Box)长方体
摩擦系数0.3-0.50.5-0.8
弹性系数0.0(布料不反弹)0.0
质量0.08-0.150.15-0.3

约束层面

参数飘逸长裙挺括短裙
约束类型SpringHinge 或 Spring(较大系数)
弹簧系数0.03-0.10.2-0.5
阻尼0.01-0.050.1-0.15

MMD 全局参数对头发布料的影响

物理步进频率(Physics Step)

默认 3。调整为 5 或 6 能:

空气阻力(Air Resistance)

MMD 全局设置里的空气阻力值(默认 0.002):

重力(Gravity)

默认 9.8(地球标准):

特殊效果

双马尾的摆动

马尾的物理关键在于从根到梢的约束逐渐变软:

这样马尾会有"根部跟着头,尾部因为惯性继续摆"的自然效果。

头发被风吹

MMD 没有内置风力系统。实现方式:

多层裙摆

多层(内层+外层)裙摆物理:

快速诊断:物理太"僵"还是太"散"

太僵(像钢)

太散(像果冻,晃不停)

社区调优经验

好模型的物理调优通常需要几小时甚至几天——社区配布者已经帮你做好了。优先用配布说明里物理"调整済み"的模型,省下调物理的时间去 K 表情和相机。

如果实在遇到物理很烂的模型又必须用它:

  1. 先用 PMX Editor 做基础修复(缩小碰撞组、调整碰撞体积)
  2. 如果还不行,考虑物理烘焙 + 后期合成(把物理结果固化)
  3. 终极方案:手动 K 头发/裙摆骨骼的关键帧(虽然繁琐但最可控)