关于 Pixel Art Animator
Pixel Art Animator 是面向像素画创作者的动画 Skill,涵盖帧、时序、动画标签和链接 Cel 的管理,支持组织循环动作并为后续导出做准备。
主要功能
- 01添加、复制和删除动画帧
- 02设置帧时长
- 03创建带播放方向的动画标签
- 04链接 Cel 以共享图像数据
- 05规划常见动画工作流
适用场景
- 01制作待机、行走或攻击循环
- 02调整动画帧率与停留时长
- 03按动作序列整理复杂精灵
- 04让背景在角色动画中保持静止
MCP 相关
通过 pixel-mcp 所用的 Aseprite 工具管理动画,例如添加帧、设置时长、创建标签和链接 Cel。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ willibrandon/ pixel-plugin --skill pixel-art-animator安装后在 Claude Code 中输入/pixel-art-animator确认已加载。
附带文件reference.mdexamples.md
详细介绍
像素艺术动画
概述
此 Skill 处理精灵图的所有动画相关任务,包括帧管理、时序、动画标签(序列)以及用于高效制作动画的链接图层单元。
适用场景
当用户:
- 想要为精灵图“制作动画”或“添加动画”
- 提到“帧”“关键帧”或“帧速率”
- 描述动作:“行走循环”“跑步循环”“待机动画”“攻击动画”
- 询问“动画标签”“循环”或“播放”
- 想要创建用于动画的“精灵图集”(与导出器 Skill 协作)
触发关键词: 制作动画、动画、帧、行走循环、跑步、待机、攻击、循环、移动、动作
说明
1. 了解动画基础知识
帧: 动画序列中的单张图像。精灵图初始包含 1 帧。
帧时长: 每帧显示的时间(毫秒)。默认值:100ms(10 FPS)。
动画标签: 命名的帧序列(例如,“行走”使用第 1-4 帧,“待机”使用第 5-8 帧)。
链接图层单元: 与另一个图层单元共享图像数据的图层单元。编辑其中一个会更新所有链接的图层单元。
播放方向:
- 正向: 按 1 → 2 → 3 → 4 播放帧,然后循环
- 反向: 按 4 → 3 → 2 → 1 播放帧,然后循环
- 往返: 按 1 → 2 → 3 → 4 → 3 → 2 → 1 播放帧,然后循环
2. 创建动画帧
添加帧:
使用 mcp__aseprite__add_frame 创建新帧:
- 帧从 1 开始编号
- 新帧初始为当前帧的副本(或空白帧)
常见帧数:
- 待机动画: 2-4 帧(细微动作)
- 行走循环: 4-8 帧(双腿交替)
- 跑步循环: 6-8 帧(速度更快,动作更夸张)
- 攻击动画: 3-6 帧(蓄力、攻击、恢复)
- 跳跃: 4-6 帧(下蹲、上升、顶点、下降、落地)
复制帧:
使用 mcp__aseprite__duplicate_frame 复制现有帧:
- 可用于创建不同变体
- 可作为相似帧的起点
删除帧:
使用 mcp__aseprite__delete_frame 移除帧:
- 不能删除最后剩余的帧
- 删除后会重新排列帧编号
3. 设置帧时序
帧时长:
使用 mcp__aseprite__set_frame_duration:
- 时长以毫秒(ms)为单位
- 100ms = 10 FPS
- 50ms = 20 FPS
- 33ms ≈ 30 FPS
- 16ms ≈ 60 FPS
常见时序模式:
均匀时序: 所有帧的时长相同。简单且可预测。
- 行走循环:所有帧均为 100ms(流畅的 10 FPS)
可变时序: 为强调效果设置不同的时长。
- 待机:帧速较慢(150ms),营造呼吸效果
- 攻击:快速打击(30ms),较慢恢复(100ms)
停留帧: 延长时长以营造戏剧效果。
- 跳跃顶点:200ms(滞空时间)
- 撞击:50ms(快速闪现)
4. 创建动画标签
用途: 将帧整理为命名序列。
使用 mcp__aseprite__create_tag:
- 名称:“walk”“idle”“attack”等
- 起始帧:起始帧(从 1 开始计数)
- 结束帧:结束帧(包含在内)
- 方向:“forward”“reverse”或“ping-pong”
标签示例:
- 标签“idle”:第 1-2 帧,往返播放
- 标签“walk”:第 3-6 帧,正向播放
- 标签“attack”:第 7-10 帧,正向播放
优点:
- 单独导出特定动画
- 整理复杂的精灵图集
- 游戏引擎可以引用标签
5. 使用链接图层单元
用途: 在多个帧之间共享图像数据,以节省内存并保持一致性。
使用 mcp__aseprite__link_cel:
- 帧内容不变时很有用
- 示例:背景图层在整个动画中保持不变
- 编辑其中一个链接图层单元会更新所有链接项
适用场景:
- 静态背景元素
- 行走循环中的角色面部(如果身体单独制作动画)
- 动画中的重复帧
工作流:
- 创建包含内容的帧
- 链接需要共享数据的图层单元
- 编辑一次,即可在所有位置更新
6. 动画工作流
工作流 1:行走循环(4 帧)
- 创建基础精灵图(或使用已有精灵图)
- 再添加 3 帧(共 4 帧)
- 编辑每一帧,呈现行走姿势:
- 第 1 帧:左脚向前
- 第 2 帧:着地(双脚都接触地面)
- 第 3 帧:右脚向前
- 第 4 帧:着地(双脚都接触地面)
- 将所有帧的持续时间设为 100ms
- 创建标签 "walk":第 1-4 帧,正向播放
工作流 2:待机动画(2 帧)
- 创建基础精灵图
- 再添加 1 帧(共 2 帧)
- 添加细微变化:
- 第 1 帧:正常站姿
- 第 2 帧:细微动作(呼吸、眨眼)
- 将帧的持续时间设为 500ms(缓慢、轻微)
- 创建标签 "idle":第 1-2 帧,往返播放
工作流 3:包含多种复杂动画的精灵图
- 创建基础精灵图
- 为所有动画添加足够的帧:
- 待机:2 帧
- 行走:4 帧
- 跳跃:4 帧
- 共计:10 帧
- 按顺序排列帧
- 创建单独的标签:
- 标签 "idle":第 1-2 帧
- 标签 "walk":第 3-6 帧
- 标签 "jump":第 7-10 帧
- 为每种动画设置适当的帧持续时间
示例
示例 1:简单的 2 帧待机动画
用户请求:
“为这个精灵图添加一个简单的待机动画”
处理方法:
- 添加 1 帧(现在有第 1 帧和第 2 帧)
- 在第 2 帧中做出细微变化(将像素上下移动 1-2 个像素)
- 将两帧的持续时间都设为 500ms
- 创建标签 "idle":第 1-2 帧,往返播放
- 结果:轻柔地来回摆动的待机动作
示例 2:4 帧行走循环
用户请求:
“为这个角色创建行走循环动画”
处理方法:
- 添加 3 帧(现在共有第 1、2、3、4 帧)
- 编辑每一帧,呈现行走姿势
- 将所有帧的持续时间设为 100ms
- 创建标签 "walk":第 1-4 帧,正向播放
- 结果:以 10 FPS 循环播放的行走动画
示例 3:变速攻击
用户请求:
“添加一个带快速出击动作的攻击动画”
处理方法:
- 添加 5 帧(共 6 帧,假设第 1 帧已存在)
- 帧序列:
- 第 2 帧:蓄势(缓慢)
- 第 3 帧:准备(缓慢)
- 第 4 帧:出击(快速)
- 第 5 帧:后续动作(中速)
- 第 6 帧:恢复(缓慢)
- 设置持续时间:
- 第 2-3 帧:150ms(缓慢蓄势)
- 第 4 帧:30ms(快速出击)
- 第 5 帧:80ms(中速后续动作)
- 第 6 帧:120ms(缓慢恢复)
- 创建标签 "attack":第 2-6 帧,正向播放
示例 4:关联背景
用户请求:
“为角色制作动画,同时保持背景静止”
处理方法:
- 假设有 2 个图层:"Background"、"Character"
- 为动画添加帧
- 在每一帧中编辑 "Character" 图层,制作动画
- 关联 "Background" 图层上的所有赛璐珞:
- 将第 2 帧的背景关联到第 1 帧
- 将第 3 帧的背景关联到第 1 帧
- 将第 4 帧的背景关联到第 1 帧
- 背景保持不变,角色则进行动画
技术详情
帧编号
- 帧编号从 1 开始(第一帧为第 1 帧)
- 在位置 N 添加帧会将其插入该位置
- 删除第 N 帧后,后续帧会重新编号
帧持续时间限制
- 最小值:1ms(不建议,速度太快)
- 最大值:65535ms(65.5 秒)
- 实用范围:16ms(60 FPS)至 500ms(2 FPS)
动画标签限制
- 标签数量没有硬性限制
- 标签可以覆盖相同的帧
- 标签名称应保持唯一且描述清晰
关联赛璐珞的行为
- 编辑一个关联赛璐珞会更新所有关联实例
- 取消关联会创建独立副本
- 有助于优化大型动画的内存使用
性能
- 添加帧:<20ms
- 复制帧:<30ms
- 设置帧持续时间:<10ms
- 创建标签:<15ms
- 关联赛璐珞:<25ms
常见模式
模式:呼吸式待机
2 帧、往返播放、缓慢节奏(400-500ms)
- 第 1 帧:正常
- 第 2 帧:轻微垂直移动(1-2 个像素)
模式:基础行走
4 帧,向前移动,时长均匀(100ms)
- 第 1 帧:左脚向前,右脚向后
- 第 2 帧:双脚并拢(接触)
- 第 3 帧:右脚向前,左脚向后
- 第 4 帧:双脚并拢(接触)
模式:跑步循环
6-8 帧,向前移动,时长更短(60-80ms)
- 姿势比行走时更夸张
- 步幅更大
- 身体前倾
模式:跳跃序列
5-6 帧,向前移动,时长可变
- 第 1 帧:下蹲(100ms)
- 第 2 帧:起跳(50ms)
- 第 3 帧:上升(80ms)
- 第 4 帧:最高点(200ms)——滞空
- 第 5 帧:下降(80ms)
- 第 6 帧:落地(100ms)
与其他技能集成
- 先使用 pixel-art-creator 创建基础精灵,再制作动画
- 制作动画后使用 pixel-art-professional 进行润色(阴影、抗锯齿)
- 用户想要导出精灵表或 GIF 时,交由 pixel-art-exporter 处理
错误处理
无法删除最后一帧:
- 精灵必须至少有 1 帧
- 如果用户尝试删除最后一帧,请告知用户
无效帧编号:
- 帧编号必须为 1 到 N(N 为总帧数)
- 执行操作前检查边界
标签帧范围错误:
- “起始”帧必须小于或等于“结束”帧
- 两者都必须是有效的帧编号
成功指标
满足以下条件时,表示你已成功使用此技能:
- 正确添加或修改帧
- 根据目标 FPS 设置合适的帧时长
- 使用正确的范围创建动画标签
- 用户了解动画将按指定方式循环或播放
- 动画已准备好导出或进一步润色