角色精灵图动画产线
GitHub端到端生成游戏角色逐帧动画视频。核心通过multi_modal2video结合极小占比首图与隐形红框提示词防爆框,支持纯文字启动自动生成定妆图。严格限制镜头、时长与特效范围,确保动作还原。
Trigger Scenarios
Install
npx skills add ddcat-ai/open-ai-canvas --skill 角色精灵图动画产线 -g -y
SKILL.md
Frontmatter
{
"name": "角色精灵图动画产线",
"metadata": {
"tag": "creative",
"owner": "1146155086906115",
"author": "AIGC炼丹师",
"source": 3,
"skillId": "14811816969996",
"version": "1.0.0",
"createdAt": 1782138853623,
"extraInfo": "",
"updatedAt": 1782387514253,
"sortWeight": 0,
"showcaseMedia": [
{
"type": "video",
"showcase_uri": "v0d870g10004d8t84vvog65uv4qobj60",
"showcase_url": "https:\/\/v6-artist.vlabvod.com\/568e610cec45d4aba9ce7b9a16993946\/6a7824ef\/video\/tos\/cn\/tos-cn-v-148450\/oIBO8EYDAmHCsTLFfjUDBgk9I81mPdIfQf8Jya\/"
}
],
"authorAvatarUrl": "https:\/\/p26-passport.byteacctimg.com\/img\/user-avatar\/ae73de8901e41ec10c54cfcfd633dfa0~300x300.image",
"initialLikeCount": 45,
"initialAddedCount": 162
},
"description": "端到端生成游戏角色逐帧动画视频。核心用 multi_modal2video(全能参考):角色图作为@图片1被提示词引用,构图与占比完全由提示词控制,从根本上防爆框(不用image2video首帧模式,那会锁死构图必爆框)。首图(定妆图)极小占比为防爆框的第一核心要素。支持纯文字无图启动:一句话拆解角色与动作、自动补全锚点、text2image生成定妆图再生视频。提示词精简(80-150字)保证动作还原,限制特效在隐形红框内,时长按动作复杂度4-6秒。链路:request_user_input → text2image(无图时)→ multi_modal2video。触发词:序列帧动画、sprite sheet、精灵图、逐帧动画、让这个角色动起来、白底序列帧、透明底序列帧、打击感动画、IP角色动画、图生视频提示词、做帧动画。"
}
分为 ”一、交互阶段(步骤0-3,需用户参与)“ 和 ”二、执行阶段(步骤4-5,自主完成)“。
👑 五条核心原则:
- 首图极小占比与确认(绝对核心): 无论用户上传还是AI生成,首图角色占比必须极小(约20%)。进入视频前必须向用户确认“是否足够小”,不够小必须利用提示词缩小或让用户重新裁剪,否则极易爆框。
- 必用全能参考: 视频生成用 multi_modal2video,角色图作为 @图片1 被提示词引用。严禁用 image2video——它以图为首帧、锁死构图、令占比提示词失效、必然爆框。
- 红框特效限制: 视频生成前必须在提示词中划定“隐形红框”安全区,严格限制特效范围,绝不外泄导致爆框。
- 提示词精简: 每段80-150字,每个词都在干活,严禁堆砌——长提示词稀释注意力导致动作做不准。
- 时长按动作复杂度4-6秒: 基础动作4-5秒;必杀/连击/召唤/二段跳类5-6秒;硬上限6秒。
一、交互阶段
步骤 0:输入分流与首图占比审查
- ✅ 有角色图 + 动作描述
- 强制审查: 立刻询问用户:“为了防止动作或特效爆框,请确认您提供的角色在画面中占比是否足够小(约20%以内)?如果觉得不是20%,强烈建议您留出更多空白再上传,或者我们后续通过提示词强制缩小。” 确认OK后进步骤1。
- ⚠ 只有一句话/纯文字、无图
- 走"无图文字链路"(步骤0A-0C)。
- ⚠ 只有图、无动作
- 询问想做什么动作(给示例:待机/跑/二段跳/普攻等),同时执行上述的强制审查占比。
- ⚠ 完全模糊
- 追问:角色长什么样?做什么动作?
【无图文字链路(用户只有一句话时)】
- 步骤 0A:拆解 + 补全角色
- 拆解角色与动作。角色细节不足时自动补全5维锚点并告知用户(体型/头部/服装配色/武器/风格)。
- 步骤 0B:生成定妆图
- 调用 text2image 生成定妆图:[补全后的具体角色描述],全身像,自然战斗预备站姿,正面略侧身,角色在画面中占比极其微小(高度仅约20%)、四周留出极其夸张的开阔空白,背景纯白#FFFFFF干净无杂物,[风格]...。大面积白色则底色改#00FF00。
- 步骤 0C:定妆图占比确认(核心防爆)
- 展示定妆图给用户,并强制发问:“请检查这张图,角色占比是否感觉足够小(约20%)? 如果觉得占比太大了,动作幅度或特效极其容易爆框失效,我可以调整提示词继续帮您把角色缩小。”
- 不满意/不够小 → 调描述(加重“缩小、微缩、极限留白”语气)回0B重生。
- 满意/已够小 → 作为 @图片1 进步骤1。
- ⚠ 边界:用户已上传图时,严禁用text2image/image2image改图凑图(会角色漂移)。
步骤 1:信息提取
收集必填项:角色图(@图片1)、动作描述。缺失则调用 generate_form_for_info_collection。
步骤 2:动作节奏 + 占比 + 时长基准
| 动作类型 | 时长 | 节奏要点 | 画面高度上限 | FPS |
|---|---|---|---|---|
| 待机/站姿 | 5s | 无缝循环,呼吸节律含2周期 | 20% | 12-20 |
| 行走/奔跑 | 4s | 无缝循环,对称步态/4步态周期 | 20% | 12-16 |
| 普攻/斩击 | 4s | 起手→爆发→收,爆发点顿帧 | 20% | 16-20 |
| 受击/突进 | 5s | 命中后仰复位 / 假位移不出画 | 20% | 16-20 |
| 技能/必杀 | 5-6s | 蓄力→爆发→收,特效不出红框 | 20% | 16-20 |
| 二段跳 | 5-6s | 一次起跳→短暂滞空→空中二次起跳拔高→落回原地(绝非原地连续跳两次) | 20% | 16-20 |
步骤 3:写精简提示词(核心)
第一句必须是「构图重置与红框锁定头」(优先级最高):
静态相机,全身远景拍摄,固定透视,镜头零推拉零缩放,角色居中且仅占画面高度约20%、上下左右留出海量开阔空白,所有动作最大幅度与特效皆被严格限制在假想的中心红框安全区内,绝不外泄、绝不出画,严禁特写、放大主体,角色尺寸恒定。
完整模板(一段连续中文,80-150字,不分行):
[构图重置与红框锁定头] + 参考@图片1的角色([3-5个最强特征]) + [第一帧动态起势]
[风格一句] + [动作链一句] + [仅单次动作加:顿帧/披风摆动/二段跳滞空要求] + [动作X秒,循环加首尾重合] + [背景纯白#FFFFFF静止]
动作提示词专项(二段跳):
如果遇到二段跳,必须严格写明:起势下蹲,第一次起跳跃起,空中短暂滞空0.1秒后,在空中进行第二次起跳爆发拔高,最后平稳落回原地。严格遵循一次跳-滞空-二次跳的物理规律,严禁原地连续跳跃两次。
Checklist:
-
第一句包含“20%极小占比”与“特效不出中心红框安全区”
-
角色锚点用"参考@图片1的角色(≤5特征)"
-
第一帧动态起势非立姿
-
若为二段跳,包含“一次跳-滞空-二次跳-落回原地”
-
结尾"动作X秒"在4-6秒
-
整段80-150字,无血腥词
确认后进入执行。
二、执行阶段
步骤 4:生成视频(全能参考,关键)
- 调用 multi_modal2video(多模态/全能参考)。
- 角色图作为 @图片1 传入,提示词里用"参考@图片1的角色"引用。
- 提示词 = 步骤3的精简提示词。
- ⚠ 严防死守:绝禁用 image2video,会破坏首图占比与红框安全区导致爆框。
步骤 5:质量校验与故障排查
逐项查:① 动作是否在隐形红框内,未爆框 ② 时长4-6秒 ③ 镜头静止无推拉 ④ 二段跳是否符合物理规律 ⑤ 角色尺寸全程恒定。
最多重试3次。
故障速查表更新:
| 症状 | 修复策略 |
|---|---|
| 爆框/特效出画 | ① 确认用的 multi_modal2video ② 强化提示词:严禁特效溢出中心红框安全区 ③ 调低武器/特效挥舞幅度。 |
| 二段跳变原地蹦跶 | 强化动作链描述:起跳→强滞空0.2秒→半空二次起跳拔高绝对高度→落地,严禁脚不离地的连续两次跳跃 |
| 占比指令不生效 | 用户原图本身占比太大,或者误用了image2video首帧模式。 |
| 打击感软 | 爆发点加"0.1秒强顿帧+微震动"。 |
| 突进真跑出画 | 改"原地纵向弹性拉伸模拟瞬移,身体不离画面中心"。 |
后续处理提醒:
视频输出MP4后,若用户需透明底序列帧/GIF,告知可通过FFmpeg抽帧(ffmpeg -i in.mp4 -vf fps=12 f_%04d.png)及后续Python抠图拼接(或单帧 foreground_segmentation)在本地完成。
Version History
- 2584227 Current 2026-09-27 13:02


