导入pmx模型文件
本文最后更新于12 天前,其中的信息可能已经过时,如有错误请留言

涉及知识

4 个着色模式

图标模式名称显示效果主要用途
🌍 网格球线框模式 (Wireframe)只显示物体的线框,内部可见观察结构、选取隐藏的顶点/边/面
⚪ 灰色球实体模式 (Solid)显示纯色的物体,有基本光照建模最常用,直观清晰
🌐 半亮球材质预览模式 (Material Preview / LookDev)显示材质、贴图,使用 HDRI 环境光照检查贴图和材质效果
🎥 镜头圆形渲染模式 (Rendered)按渲染引擎实时显示最终效果预览最终画面质量、灯光、材质

如果导入的模型是灰模,请查看是否为材质预览模式

Blender 模型常见组成部分

中文名英文名说明
网格Mesh模型的几何体(顶点、边、面),就是你看到的“身体/衣服/武器”那部分。
骨骼Armature骨架系统(Skeleton),用于驱动网格的运动。
材质Material定义物体的外观,比如颜色、金属感、透明度。
纹理Texture材质里用到的图片贴图(jpg/png 等),常见有颜色贴图 (Base Color)、法线贴图 (Normal Map)、粗糙度贴图 (Roughness)。
着色器Shader材质的计算方式,Blender 里常用 Principled BSDF
物体ObjectBlender 场景里的一个实体,可以是 Mesh、Armature、Camera 等。
集合Collection场景管理文件夹,把多个物体归类。
修改器Modifier非破坏性建模工具,比如 Mirror(镜像)、Subdivision(细分)、Armature(骨骼绑定)。
形态键Shape Key也叫 Morph Target,用来存储模型的不同变形(比如表情、嘴型、肌肉抖动)。
顶点组Vertex Group网格里的一组顶点,常用于骨骼绑定(权重)、蒙皮或遮罩。
权重Weight顶点与骨骼的绑定强度(0~1),通过 Weight Paint 可视化。
动画Action / Animation骨骼或物体的关键帧动作。
约束Constraint附加规则(比如 IK 反向动力学、Copy Rotation)。
物理系统Physics碰撞、布料、头发、刚体等模拟系统。

步骤

1.下载MMDTools(对于PMX格式文件),
2.选中整个模型,点击Convert to Blender,这样导出的FBX文件材质才能正确的与Mesh匹配

3.导出时全选角色,选择只导出选中部分,原因参考问题1
4.如果有显示错误请参考问题2

问题1:多了很多蓝色的物体,禁用之后显示的是正确的模型

MMD 的材质描边系统

  • MMD 模型常常在材质里加“描边”,是通过复制一份模型、反转法线、用纯色材质来做。
  • 导出到 Unity 后,这些“描边 Mesh”就会变成额外的蓝色物体。

透明材质/遮罩层

  • PMX 有些部件(比如眼睛、发丝阴影)用了半透明贴图。
  • Blender/Unity 转换时,有些透明通道识别成了纯色(常见是蓝色或紫色)。

导出时保留了辅助 Mesh

  • PMX → OBJ 的导出会把所有 mesh 都导出(包括你不需要的描边部分)

只导出需要的材质

  1. 在 Blender → 导出 FBX 的时候,勾选 Only Selected Objects
  2. 先在 3D 视图里只选中“真正的模型部分”,排除掉蓝色辅助 Mesh。
  3. 导出后,Unity 里就不会有那些多余物体。

问题2:unity在错误的方向渲染模型

查看面的法线方向是否正确:

启用面朝向显示(Face Orientation),蓝色表示法线朝外,红色表示法线朝内,这里大概率是不正确的,所以有2种解决方式:

方法 1:在 Unity 材质里开启双面渲染(推荐简单)

选中这个带子材质(Material),由于这是 Shader 导入的默认材质,而不是你自己新建的材质Unity 把它当成“只读材质”,所以你看不到可编辑的下拉菜单。这种情况下,材质是从 FBX/OBJ 自动生成的,部分选项是锁定的。所以我们创建变体

Inspector → Surface Options → Render Face 里改成 Both。这样 Unity 会把正反两面都渲染。

  • 优点:快速,不改模型。
  • 缺点:显卡负担稍微大一点(但对小带子基本没影响)。

方法 2:在 Blender 里给带子加厚度(推荐长期)

  1. Blender 里选中这个带子。
  2. 进入 编辑模式 (Tab) → 全选面。
  3. 在右侧 Modifier(修改器) 面板,加一个 Solidify(实体化) 修改器。
    • 设置 Thickness(厚度)为一个很小的值,比如 0.001
  4. 应用修改器(Apply)。
  5. 这样带子就有厚度了,内外都会有法线 → Unity 里不需要双面渲染也能正确显示。

通过快捷键1 → 点(Vertex)选择2 → 边(Edge)选择3 → 面(Face)选择(注意要在 Edit Mode 编辑模式 下才能用),改为面选择

那为什么脚会被拉长?(未解决)

骨骼映射齐全 ✅但播放 Humanoid 动画时,脚部顶点跟着小腿/大腿骨跑了 ❌ 说明脚的 Mesh 顶点权重被错误分配

骨骼绑定 (Skin / Armature Modifier)

当你在 Blender/Unity 里把一个网格(Mesh)和一个骨架(Armature)绑定后,实际上只是在告诉软件:
👉 这个网格可以跟随骨骼动。

但是!此时网格上的 每个顶点 并不知道该跟随哪根骨骼,也不知道该跟随多少。
结果就是:如果没有权重,整个模型会像一块“铁板”一样随一根骨骼一起动,其他骨骼没效果。

权重就是告诉模型的每个顶点:

  • 它受哪些骨骼影响?
  • 影响程度是多少(0 ~ 1 之间的值)?

比如:

  • 大腿顶点:70% 受大腿骨影响 + 30% 受髋骨影响
  • 膝盖顶点:50% 大腿骨 + 50% 小腿骨
  • 小腿顶点:80% 小腿骨 + 20% 脚骨

这样当你弯曲膝盖时,网格才会 自然过渡,不会出现硬折或撕裂。

修改A pose 到T pose(反之亦然)

教程地址:https://www.youtube.com/watch?v=10YSMWOQv8g&t=10s

1.选中骨骼,进入pose模式。旋转胳膊的根节点使大致呈T型

2.切换会Object模式,选中身体的mesh(不包括头发,包括衣服),创建一个(蒙皮)修改器,它的作用就是:让一个网格跟随骨架(Armature)变形
建一个角色模型 → 给它加 Armature Modifier → 绑定骨架 → 网格就能随骨架动。

新建的Modifier,object选中当前模型的骨骼(与上保持一致)

3.下载Skkeeper
在 Blender 中,修改器 (Modifier) 一般不能直接和 形变键 (Shape Keys) 一起工作。

  • 如果你有一个带形变键的人物/表情模型,一旦应用修改器(比如 Mirror、Subdivision、Solidify 等),形变键很可能会丢失或出错。

SKkeeper 的作用就是:
👉 自动执行“带形变键的网格应用修改器”的过程,并尽可能 保持形变键 (Shape Keys) 的完整性

4.切换到Pose模式

衣服和身体mesh分离的情况见视频教程

学习笔记如有侵权,请提醒我,我会马上删除
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇