Blender动画笔记
动画摄影表
动作编辑器
动作是一个关键帧序列。在动作列表里选中一个动作时,会把这个动作的关键帧应用给当前激活的物体。动作列表后面显示了当前动作被多少物体使用。


要取消应用动作,在点X或在大纲视图物体下面的动作上右键取消关联。
非线性动画编辑器
怎么删掉NLA轨道
来到非线性动画编辑器,把锁定解除,点红圈区域把轨道选中


右键删除片段

右键删除空白动画数据

常用操作
要导出一个带多个动画的fbx应该怎么操作

导出的fbx好像会把场景里所有的根物体和Blender文件里的动作组合后导出,不管一个物体有没有用这个动作。
只给一个负责控制的空节点打关键帧,不给骨骼打关键帧,出来的动作是错的

在动作编辑器新建一个动作:

Armature下原来的仰视动画变成了NLA轨道。

blender里面怎么设置一个action的时长?我调整时间轴的结束帧,影响到了所有action
ChatGPT:
当你在 Timeline(时间轴) 调整「结束帧(End Frame)」时,它确实会影响整个场景的播放范围——而不是单独某个 Action。
也就是说,所有 Action 都会一起变长或变短,因为这是全局设置。
如果你想让某个 Action 的时长独立,要在 Dope Sheet → Action Editor 或 NLA Editor 中操作。
✅ 解决方案 1:在 Action Editor 中设置 Action 的时长
- 打开 Dope Sheet 窗口。 
- 在左上角模式切换为 Action Editor。 
- 选择你的对象(有动画的那个)。 
- 找到对应的 Action(上方下拉菜单里)。 
- 拖动关键帧,或在 A 全选后使用: - S(缩放时间) 
- G(平移关键帧) 
 来调整该 Action 的整体时长。
 
👉 这样调整的是该 Action 自己的时间,不会影响场景全局。
✅ 解决方案 2:在 NLA Editor 中控制每个 Action 的播放区间
如果你要组合多个动作(比如“走路”“跳跃”),建议用 NLA Editor:
- 打开 NLA Editor。 
- 选中对象。 
- 如果你的 Action 还没推入 NLA,点「Push Down Action」。 
- 现在每个 Action 变成一条「条带(strip)」。 
- 选中条带 → 按 N 打开右侧面板 → 调整: - Start Frame(起始帧) 
- End Frame(结束帧) 
- Scale(时间缩放) 
 
这样你可以独立控制每个 Action 的时长,而不会影响其他动画或全局播放范围。
💡 小贴士
- 想让动作保持原速,但延长播放:可以在 NLA 里用 Repeat 参数。 
- 想对齐不同动作:打开「Snap」选项(Shift+S 菜单)。 
- 如果只是想改某个 Action 的长度,不要去动 Timeline 的 End Frame。 
我在做动画的时候时间轴结束帧应该设置多少?
🎞 一、你在做「单个动作」(例如角色走路、跳跃、攻击)
👉 建议设置:
结束帧 = 动作关键帧的最后一帧 + 一点缓冲(比如 +5~10 帧)
这样方便循环预览,也不会因为动画刚好在最后一帧停住而难以观察。
例如:
- 走路动作关键帧在 1–40 帧 
- 那就可以把结束帧设为 45 或 50 
🎬 二、你在做「完整镜头」或「短片」
👉 建议设置:
结束帧 = 整个镜头最后一帧(通常根据分镜或剧本决定)
常见帧率是 24fps:
- 10 秒动画 → 240 帧 
- 30 秒动画 → 720 帧 
- 1 分钟动画 → 1440 帧 
如果你还在规划阶段,可以先估个长度再调整。
🧩 三、你有多个 Action(比如走路 + 挥手 + 停下)
在这种情况下,不要用结束帧去控制动作时长。
而是:
- 把各个动作推入 NLA Editor; 
- 按时间顺序排好; 
- 然后把时间轴的结束帧设为 最后一个动作结束的帧数 + 缓冲。 
这样 Timeline 的范围正好能播放完整个动画序列。
💡 小建议
- 如果你做的是 循环动画(比如游戏动作),保持在 1~60 帧之间比较方便导出。 
- 如果你做的是 电影或短片,结束帧建议与音频或剪辑时长匹配。 
- 你也可以用快捷键: - Ctrl + Alt + P → 设置时间轴范围为选中关键帧范围- 自动对齐当前动画长度。 
我在blender做FPS动画,做瞄准的时候我把双手用子级约束绑定到枪的挂载点,现在我要做跑步,需要左手不再绑定枪,我想在一个工程里做左手绑定枪的和不绑定枪的action
🧩 目标
在同一个 Blender 工程中:
- 一个 Action(比如 aim)左手绑定在枪上; 
- 另一个 Action(比如 run)左手自由,不受枪约束。 
✅ 方法一:用 Child Of 约束 + Influence 动画关键帧(推荐)
这是最标准、最干净的做法。
步骤:
- 选中左手骨骼(通常是手腕或手部控制骨)。 
- 添加约束: - Add Constraint → Child Of → 目标:枪的挂点(比如 “Weapon_Grip_L”)
- 在瞄准动作的开头: - Influence = 1.0 
- 按 - I键在 “Influence” 上打关键帧(代表绑定枪)。
 
- 在跑步动作的开头: - Influence = 0.0 
- 按 - I再打关键帧(代表解绑枪)。
 
🎯 Blender 会自动在不同 Action 中记录不同的 Influence 状态!
这样:
- 在 - aimAction 中左手会被绑定到枪;
- 在 - runAction 中则完全独立。
⚠️ 注意:切换 Influence 时(比如从 1 → 0),要点「Clear Inverse」一次,
否则手的位置可能会跳。
✅ 方法二:用 NLA 分层(更适合组合动作)
如果你想以后把跑步 + 瞄准 混合(比如边跑边举枪):
- 把每个动作都保存为单独的 Action; 
- 在 NLA Editor 里推成不同条带; 
- 使用 Additive 或 Override 混合模式; 
- 左手的约束在上层 Action 控制即可。 
⚙️ 方法三:用骨骼切换(备用方案)
有时候 FPS Rig 会专门做两个左手控制骨:
- 一个约束在枪上(左手_Aim); 
- 一个自由(左手_Free)。 
 然后用 Visibility 或 Custom Property 控制哪个骨在用。
这种方式更适合导出到游戏引擎时处理复杂状态机。
💡 小贴士
- 如果切换动作时手有“跳动”,多半是没 Clear Inverse 或关键帧没对齐。 
- 记得每个动作保存成单独的 Action,不要在同一个 Action 里混合。 
- 你可以在 NLA 中同时测试两个动作是否衔接自然。 
我在blender里给控制骨骼打关键帧,导出fbx时会变成骨骼的关键帧?
🎯 简短结论(先说重点)
是的,Blender 里你打在「控制骨骼(control bones)」上的关键帧,导出成 FBX 后,通常会变成「实际变形骨骼(deform bones)」的关键帧。
不过这个要视你的 Rig 结构 和 导出设置 而定。
如果你的控制骨骼只是通过约束驱动 deform 骨,那导出时 Blender 会**“烘焙(bake)”动画**,也就是把约束的结果计算成 deform 骨的关键帧。
⚙️ 一、Blender Rig 的两层结构(关键理解)
大多数动画 Rig 分两类骨骼:
| 类型 | 功能 | 是否导出 | 
|---|---|---|
| 控制骨(Control bones) | 动画师操控的,用于 IK/FK、约束、控制逻辑 | ❌ 通常不导出 | 
| 变形骨(Deform bones) | 实际驱动模型顶点的,用于绑定蒙皮 | ✅ 会导出 | 
你在 Blender 里打关键帧的通常是 控制骨,
而导出 FBX(尤其导出到 Unity、Unreal、Godot 等)时,FBX 里只包含:
- Deform 骨的位置、旋转、缩放动画 
- 控制骨一般被自动忽略或被烘焙进 deform 骨 
📦 二、FBX 导出时动画是怎么转换的
当你导出 FBX 并勾选:
✅ Bake Animation
Blender 会执行以下流程:
- 读取每一帧; 
- 计算所有约束的最终结果; 
- 把 deform 骨的最终姿势写入关键帧; 
- 忽略非 deform 骨(比如纯控制骨)。 
结果就是:
👉 导出的 FBX 动画表现完全一致,但关键帧“转移”到 deform 骨上了。
🧩 三、控制导出行为的关键选项
在 File → Export → FBX (.fbx) 窗口中,注意这些:
| 选项 | 推荐设置 | 说明 | 
|---|---|---|
| Apply Transform | ✅ | 确保坐标一致 | 
| Add Leaf Bones | ❌ | 避免多余虚拟骨 | 
| Bake Animation | ✅ | 必开,否则约束动画不会导出 | 
| NLA Strips | ❌(除非你在用 NLA 组合动画) | 控制是否导出多个动作 | 
| Simplify | 0.0 | 避免关键帧被过度压缩 | 
💡 如果你想导出多个 Action(瞄准、跑步、换弹等),
可以在 NLA 里分别推入各条 Action,然后导出时勾选:
✅ “All Actions”
Blender 就会把每个 Action 烘焙成独立的 FBX 动画片段。
🧠 四、总结一下
| 问题 | 原因 | 解决方式 | 
|---|---|---|
| 导出后关键帧变成骨骼的 | 动画烘焙机制 | 这是正常、正确的行为 | 
| 控制骨动画消失 | 控制骨不参与 deform | 需 bake 动画或导出 deform 骨 | 
| 想保留控制骨关键帧 | 不建议(游戏引擎不识别) | 仅在特殊 Rig 调试时导出全部骨骼 | 
不绑定顶点组,勾选了deform的骨骼的关键帧导出后消失了
简化要设置0。

不绑定顶点组,勾选了deform的骨骼的关键帧导出后位置错了
blender里开头、结尾、中间有关键帧。

unity里关键帧靠后了。时长由60帧变成2秒,倒是没有错。

