MMD 时间轴与关键帧 — 动画的骨架
什么是时间轴
如果说 3D 视口是 MMD 的"画面",那时间轴就是它的"画布"——动画的一切都在时间轴上展开。
时间轴横跨 MMD 窗口底部,主要由三部分组成:
- 帧编号标尺:从 0 开始向右延伸,每个刻度代表一帧
- 菱形标记:关键帧的位置标记(不同颜色对应不同类型)
- 播放指针:当前操作/预览的帧位置(竖直红色线)
帧与秒的换算
MMD 默认使用 30 FPS(每秒 30 帧)的时间基准:
| 时间 | 帧数 |
|---|---|
| 1 秒 | 30 帧 |
| 3 秒 | 90 帧 |
| 5 秒(短舞蹈) | 150 帧 |
| 3 分钟(完整歌曲) | ~5400 帧 |
播放控制条上可以切换 24 / 30 / 60 FPS,建议做正式作品时保持 30 或 60 FPS。
关键帧(Keyframe)
关键帧是时间轴上最重要的概念——它标记了某个"关键时刻"的完整状态:
- 骨骼姿势(哪些骨骼?什么角度?)
- 表情 Morph 数值
- 相机动画(位置、朝向、FOV)
- 特效开关与参数
- 光源方向与颜色
关键帧之间,MMD 自动进行补间插值,让画面流畅过渡。
菱形标记的颜色
时间轴上不同颜色的菱形代表不同类型的关键帧:
| 颜色 | 类型 |
|---|---|
| 黑色 / 深灰 | 模型姿势(骨骼 + Morph) |
| 蓝色 | 相机动画 |
| 红色 | 光源设置 |
| 绿色 | 特效 |
| 白色 | 音频标记 |
关键帧的操作
在时间轴上可以:
- 点击菱形:选中这帧,操作面板自动跳到对应帧
- 拖动菱形:改变时间位置
- 双击菱形:删除这个关键帧
- 框选多个菱形:批量操作
时间轴控制面板
面板上的按钮和参数:
当前帧号
面板上方通常显示「帧:XXX」,也可以直接输入帧号按回车跳转。做长动画时,手动跳帧比在时间轴上拖着走更高效。
帧范围选择
有些操作需要指定帧区间:
- All / 全帧:操作覆盖整个时间轴
- Range / 指定范围:输入起止帧号,只对这段时间生效
关键帧操作按钮
| 按钮 | 功能 |
|---|---|
| 注册(Register) | 把当前状态存为关键帧 |
| 删除(Delete) | 选中菱形的关键帧删除 |
| 复制帧(Copy) | 复制当前帧的完整数据 |
| 粘贴帧(Paste) | 在当前帧位置粘贴 |
| 反转(Reverse) | 帧区间倒序播放(常用于舞蹈 mirror) |
| 移动帧(Move) | 整体移动一段帧的时间位置 |
自动关键帧
部分版本支持「自动注册」模式——只要你在非关键帧上改了骨骼姿势,MMD 自动生成新的关键帧。但默认是关闭的,大多数时候需要手动点注册按钮。
时间轴与动作数据的关系
当你导入一个 .vmd 动作数据文件时,它本质上就是一堆预设好的关键帧数据:
- VMD 里的关键帧会自动填到时间轴上
- 你可以把导入的动作看作"已经有人帮你 K 好帧的半成品"
- 你需要做的是:加载、预览、微调、加相机、加特效、加表情
所以 MMD 有两条制作路线:
- 导入现成 VMD(90% 新手的做法)→ 重点在"编辑"和"装饰"
- 手动 K 帧(进阶创作)→ 从零开始在时间轴上摆姿势、注册
帧区间的高级操作
复制-粘贴实现循环动作
很多舞蹈动作是循环的(8 拍或 16 拍),可以这样实现:
- 在时间轴上框选第一个循环段的所有关键帧
- 按复制
- 跳到下一段的起始帧
- 按粘贴
- 重复直到覆盖整段音乐
帧反转做 Mirror 舞蹈
想让角色做镜面对称的动作?
- 选中一段帧区间
- 点「反转」
- 配合左侧/右侧骨骼的镜像调整
补间曲线影响帧间过渡
时间轴上的两个菱形之间,实际的运动速度和加速方式由补间曲线决定——这个在独立的补间曲线面板调整。直线 = 匀速,曲线 = 先快后慢(模拟真实物理)。
工作流:从时间轴出发
大多数 MMD 作品的时间轴操作顺序:
0 帧 ← 模型初始姿势、相机起始位置
│
├─ 导入 VMD 动作 → 自动填好模型关键帧
│
├─ 导入 VMD 相机 → 自动填好相机关键帧(如果有)
│
├─ 手动加表情关键帧(在对应音乐节点)
│
├─ 调补间曲线(让动作更自然)
│
└─ 播放预览 → 发现不对 → 跳帧调整 → 注册 → 再预览
记住:时间轴不是写一次就完的——它是你反复"播放 → 调整 → 注册 → 再播放"的迭代画布。