SuperAPI AI 工具集

spritecook-animate-assets

设计与创作

查看项目

更新于 10-16 06:39

技能介绍

SpriteCook Animate Assets 是 SpriteCook 的动画工作流技能,用于把已有的 SpriteCook 素材动画化为短小的像素风或精细风格动画。它建议与 spritecook-workflow-essentials 配合使用,后者负责积分、清单、安全下载与共享默认值。

使用前提 需要将 SpriteCook MCP 服务器连接到你的编辑器。可通过 npx spritecook-mcp setup 进行设置,或参见 spritecook.ai。

主要工具:animate_game_art 该工具把已有的 SpriteCook 素材动画化为短小的像素风或精细动画。工具会立即返回一个任务,应按照返回的 poll.tool 与 poll.arguments 进行轮询,而不是让请求一直挂起。

参数说明

  • asset_id:字符串,必填。要动画化的已有 SpriteCook 素材 ID。
  • prompt:字符串,必填。描述随时间发生的精确动作。若 auto_enhance_prompt=true,像“Idle”或“Attack”这样的简单提示词也可接受。
  • auto_enhance_prompt:布尔值,默认 true。检查源素材并把简短提示词扩展为更完整的动画提示词。
  • edge_margin:整数,默认 6。在动画取景前于四周增加间距。
  • pixel:布尔值,默认 null。可选模式覆盖。若省略,SpriteCook 会根据素材推断模式。
  • output_frames:整数,默认 8。偶数帧数。像素模式支持 2-16,精细模式支持 2-24。
  • output_format:字符串,默认 "webp"。可选 "webp"、"gif" 或 "spritesheet"。
  • negative_prompt:字符串,默认 null。可选的动态或内容排除项。
  • matte_color:字符串,默认 "#808080"。处理透明度之前使用的十六进制遮罩色。
  • removebg:字符串,默认 "Basic"。可选 "None"、"Basic" 或 "Pro"。
  • colors:整数,默认 24。像素调色板大小。仅在 pixel=true 时有效。

工作流程

  1. 如果用户已有 SpriteCook 素材,直接把其 asset_id 传给 animate_game_art。
  2. 如果用户只有本地图片文件路径,使用 spritecook-upload-assets 调用 create_asset_upload,上传字节,然后调用 finalize_asset_upload。
  3. 如果用户提供小型 data URL 或原始 base64 值,先调用 import_asset,并使用返回的 asset_id。
  4. 在 animate_game_art 中使用返回的 asset_id。
  5. 除非需要强制某个模式,否则保持 pixel 省略。 上传/导入步骤是源图片进入 SpriteCook 的环节,并非动画调用本身。当 MCP 素材上传工具可用时,应使用这些工具。

一致性规则

  • 始终对代表目标角色或物体的确切源素材进行动画化。
  • 如果用户要求为一个角色制作多个动作,应针对同一个 asset_id 分别运行动画任务,例如 Idle、Walk、Attack 等。
  • 除非用户明确想要不同的角色设计,否则不要为每个动作创建新的静态图像。

源素材规则

  • 像素动画适用于最大 256x256 的素材。
  • 精细动画适用于 256x256 到 2048x2048 之间的素材。
  • 不要强制把小于 256 的源素材放入精细模式。
  • 默认保持 edge_margin=6,有助于防止像素画挤到画布边缘。

提示词撰写

  • 在撰写提示词之前,先检查实际的源角色。
  • 对于像素画,用最近邻方式把源图放大到约 1024x1024,仅用于检查。
  • 先识别可见的角色细节:轮廓、护甲、面罩、武器、盾牌、姿势与朝向。
  • 只提及源图片中实际可见的细节。
  • 用平实散文写一个短段落,而不是标签或关键词列表。
  • 描述什么在动、如何动、什么保持稳定,以及可见道具或武器如何使用。
  • 让动作基于现有角色,而不是发明新装备或特效。
  • 避免像 idle animation 这样的泛泛提示词,除非 auto_enhance_prompt=true。

示例 idle 提示词: The armored soldier in purple tactical gear stands in a steady combat stance, subtly bobbing up and down in a rhythmic breathing idle. His yellow visor catches the light while his rifle shifts slightly in his grip, maintaining a high state of readiness.

示例 attack 提示词: The armored soldier in purple tactical gear raises his rifle and fires several shots, with yellow muzzle flashes appearing at the tip of the barrel. His body recoils with each shot while his head and visor remain focused forward, maintaining a steady combat stance throughout the firing sequence.

如果 auto_enhance_prompt=true,像 Idle、Attack 或 Walk 这样的简单提示词是有效的,因为 SpriteCook 可以检查源素材并自动扩展它们。

check_job_status 使用 animate_game_art 返回的 job_id 配合 check_job_status。成功时,使用 asset_id 加上规范的 sprite_url;仅在存在时使用 spritesheet_url。如果响应报告 warning.code="asset_output_unavailable",执行所提供的 warning.recovery 工具调用。