上一篇讲了六位蛇娘"怎么打"。这一篇讲她们的"表演":
放技能时的专属动作立绘、技能炸开的专属特效贴图——这些画面是怎么从一张 AI 生图,走到你的屏幕上的。
老版本放技能是什么样?角色原地不动,脚底下冒一个代码现画的圆圈。完事。
一、释放动作:每人 10 张姿势,施放瞬间换装
先说动作。现在每个角色有5 个技能 × 2 种形态 = 10 张专属动作立绘,人形态的技能释放动作与蛇娘形态不同。六个人一共 60 张。你在战斗里每按一次技能,角色都会摆出这一招的专属姿势——月见的"望月"是踮脚托举满月,星璃的"星引"是俯身按向引力井,一招一式都对得上技能名。
下面是星璃人形态技能释放动作的五连拍,从左到右正好是技能 1 到 5 的释放姿势
图 1:星璃五技能的释放动作——落星 / 连星 / 星引 / 流星雨 / 星图
月见的五张则完全是另一种气质——月桂、纱裙、月光丝线:
图 2:月见五技能的释放动作——月渡 / 月弧 / 月华引 / 新月刃 / 望月
让立绘"在正确的时机出现"其实有个小讲究:施放技能到特效炸开只有零点几秒,如果每次施放都现场加载一张大图,第一次放技能会卡一下。所以进战斗时就把本局角色的全部动作立绘预先缩放好、放在内存里,施放瞬间只是"换一张图贴上去"。这也是老版本没做的——不是做不了,是没想到要做。
图片抠图没抠干净,请见谅
# 教学简化版 · 思路示意(非完整可运行)
# 进战斗时:把 10 张动作立绘按显示尺寸预缩放缓存
self.char_cast_poses = [load_and_scale(p, show_size) for p in cast_paths]
# 施放瞬间:切姿势 → 播特效 → 姿势保持零点几秒后切回
self.cast_pose = self.char_cast_poses[key - 1]
二、特效贴图:从"代码画圈"到正经美术
老版本的技能特效是代码现场画的:一个扩散的圆、几条旋转的线,颜色对了,但一看就是程序员美术。现在每个技能的特效都是一张正经画出来的贴图——按角色、按技能、按形态分开,一共 50 张专属特效(最早做的薄荷还是老一代,欠着)。
一部分特效贴图的"素颜"长这样——这些是抠好透明底的成品,在暗底上排开:
图 3:八个技能特效贴图——星璃的星涡与星座、月见的望月与光柱、绯焰的火焰、潮汐的水域、樱落的花爆
放进战斗里是这样的——贴图跟着技能一起炸开、扩张、淡出:
图 4:潮汐在霓虹夜市甩出凝水潮鞭,水幕贴图正在扩散
图 5:月见的"望月"实机——满月贴图悬在头顶,配合托举姿势立绘一起出现
图 6:星璃施放"星引"——俯身按地的姿势 + 引力井贴图同时出现
图 7:樱落的技能"樱放"——花环贴图在她脚下展开
三、管线:一张 AI 生图要闯的四道关
50 张特效 + 60 张动作立绘,全靠一条管线流水线式地处理。每张图要过四道关:
第一关:出图。按每个技能的机制写提示词——月华引是"垂落的月光丝线",引力井是"贴地的紫色漩涡"。题材定错了后面全白搭。
第二关:抠底。AI 出的图带背景,游戏要透明底。白底图用"亮度接近白色的像素转透明"的办法批量抠,但这一步坑最多:特效内部发白的"核心"会被误伤成透明洞,所以抠完还要在深色底上过一遍目检——星芒的白心不能变成黑洞。
第三关:归一。同一批图的背景灰度深浅不一,统一刷成标准底色再抠,避免"同一招在两次施放时深浅不同"。
第四关:验收。每张图拼进暗底检查图里肉眼过一遍,透明区干净、主体完整才算过。50 张特效里返工最多的就是第一关和第二关——光效题材的图,"要发光的部分"和"要抠掉的背景"经常长得一模一样。
写在最后
这套管线最值钱的不是省了多少张图的钱,而是可持续:以后加新角色,走一遍同样的四道关就能拿到全套动作和特效,不用每次重新发明流程。