← 返回指南列表

精灵图换武器 — 动画不动,只换手里的武器

假设你有一段拿棒球棒的攻击动画,想让同一个攻击换成撬棍。AI 生成的动画里,武器是画在每一帧上的,重新生成动作就变了。解决办法是把角色和武器做成两个独立的 3D 模型,让武器跟着手走。这样换武器完全不碰动作。

同一个片段、同样的帧,分别是空手、球棒和撬棍
同一个片段、同样的帧,分别是空手、球棒和撬棍

需要准备什么

一个绑好骨骼的角色 GLB,每把武器一个 GLB。如果从插画开始,"T-pose 拆分"会把角色重画成 T-pose,并把武器拆成单独的图,"图片转 3D"再把身体和每把武器分别转成模型。一定要分开转:和角色一起转的话,武器会和手长在一起。

T-pose 拆分消耗积分。图片转 3D 有在浏览器里运行的免费选项,但球棒这样细长的圆形道具可能出错,记得从侧面检查。后面的步骤全在浏览器里跑,不消耗积分。

第 1 步 — 绑定角色并挑动作

把身体模型过一遍"自动蒙皮",用下一步按钮进入"动画库",勾选要用的片段,继续到"3D → 精灵图"。动画库里的攻击片段(Sword_Attack、Sword_Regular_Combo、Melee_Hook 等)都是右手单手挥动,适合撬棍或单手握的球棒。目前没有双手挥动的片段,需要的话在"2 · 动作文件"里载入自己的片段。

第 2 步 — 添加武器

在"3 · 武器"里点"添加",选择 GLB 文件,可以一次选多个。每把武器生成一张卡片,点卡片就放到手上。长度和手柄端根据模型自动判断,模型斜着导出也没关系,大小从角色身高的 45% 开始。

预览下方的武器卡片,以及取景和输出设置
预览下方的武器卡片,以及取景和输出设置

握法不对就打开"调整握法"。如果拿反了,先点"调换两端"。大小、握持位置和角度每把武器单独设置,"手"可以换到左手。这些设置离开页面就没了,打算以后再加武器的话记得记下来。

第 3 步 — 取景只定一次

载入武器后,取景按角色锁定,单格不再裁边。精灵图能逐格对齐靠的就是这个,代价是角色在格子里变小:默认 2× 时大约占格子高度的一半,所以用 256px 单格比较合适。动作中武器出画时会有提示,选更宽的"取景"即可。

同一个角色的所有精灵图都要用相同的取景、机位、单格尺寸和片段,以后加的武器也一样。改了任何一项,图就对不齐了。

第 4 步 — 渲染精灵图

简单的做法是每把武器渲一张完整的图:"输出"保持"角色 + 武器",渲染,选下一张卡片,再渲染。

更省的做法是一张角色图加每把武器一张图层。选"无",渲出角色。然后选一把武器,把"输出"改成"武器图层"再渲染。图层里只有武器,被身体挡住的部分已经去掉。

角色图加武器图层,和合在一起渲染的画面相同
角色图加武器图层,和合在一起渲染的画面相同

第 5 步 — 在游戏里替换

把图层画在和角色相同的位置,两者始终显示相同的帧号。换武器时只换图层的贴图,动画代码不用动。空手时隐藏图层。这样十把武器只多十张图层,角色图只要一套。

如果做的是 3D 游戏

不需要精灵图。从"动画库"导出 GLB,在 Unity、Godot 或 Unreal 里把武器模型挂到 hand_r 骨骼上,换武器就是换这个模型。

需要知道的

没有碰撞检测,长武器在某些姿势下会穿过身体,改小一点或换个片段一般就好。手指只有在片段和骨骼都驱动时才会合拢。手指并进手掌绑定的角色手型不变,不过在精灵图尺寸下很难看出来。

准备好亲自试试了吗?

打开工具
精灵图换武器 — 动画不动,只换手里的武器