Community图像github.com

Luan-vP/fire-sprites-retro

将火焰表演精灵图转换为8位/像素艺术风格,并重建火焰效果。在 fire-sprites 技能渲染出动作(动作/NAME/ 目录中包含身体和火焰层)后使用,适用于表演者希望获得火舞或喷火动画的复古、像素艺术、8位或16位游戏风格。

fire-sprites-retro 是什么?

这是一个专门用于将火焰表演精灵图转换为复古像素风格的AI代理技能。它依赖于 `fire-sprites` 技能预先渲染的分离身体层和火焰层,而不是直接处理平面视频。该技能的核心创新在于重建火焰颜色:由于摄像头中的火焰会剪切为白色,直接缩小和调色板量化会导致扁平的白色团块,因此它保留了火焰的真实形状,但根据像素在火焰中的深度重新着色,使用7色热力渐变(从暗红到白色)和4x4有序抖动,使即使是细剑火焰也能拥有炽热核心,而巨大的喷火云雾则呈现宽广渐变。输出结果包括重建火焰和直接量化的对比版本(64像素和40像素高度),以半帧率(“双帧”)运行,提供动感游戏风格效果。该技能适用于Claude Code、Cursor等AI代理平台,通过 `retro.py` 工具和 `retro.html` 预览生成,最终输出为PNG精灵图和JSON帧数据。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Luan-vP/fire-sprite-kit/tree/HEAD/skills/fire-sprites-retro

Installed? Explore more 图像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

8位火焰精灵图(火焰重建版)

要求 fire-sprites 技能已渲染出动作:此工具基于 moves/NAME/ 目录中分离的身体和火焰层工作,而非平面视频。$KIT 是工具包的根目录(该文件向上两级);py 是 $KIT/.venv/bin/python;请在项目目录中运行。

py $KIT/tools/retro.py                 # 所有已渲染动作
py $KIT/tools/retro.py "breath_*"      # 或仅部分动作(名称或通配符)
open retro.html

为什么重建火焰而非直接缩小

直接缩小火焰精灵图并映射到调色板会得到扁平的白色团块:在摄像头中,火焰被剪切为白色,因此内部没有颜色可以保留。相反:

  • 身体:降采样,硬阿尔法边缘,映射到固定的8色皮肤和皮革调色板(按亮度加权以保留阴影),并带有1像素深色轮廓。
  • 火焰:逐帧保留真实火焰形状,但重新绘制其颜色。像素在火焰中的深度决定了它在7色热力渐变上的位置:边缘暗红,经过橙色和黄色,到白色核心,并在步进间使用4x4有序抖动。深度根据该火焰的厚度相对测量,因此细剑火焰仍能获得炽热核心,而巨大的喷火云雾则呈现宽广渐变。一个小型开口处理可移除泄漏到火焰层中的薄壁线条。

retro.html 以四种方式显示每个动作:重建火焰和直接量化,身体高度分别为64像素和40像素。直接版本供表演者对比差异;重建火焰是最终使用的版本。动画以“双帧”运行(主帧率的一半),营造复古感并将精灵图表大小减半。

输出:retro/NAME_B64.png、NAME_B40.png(重建版)、NAME_A64.png、NAME_A40.png(直接版),以及包含帧网格、fps和脚部锚点的 retro/atlas.json。请使用最近邻缩放并仅以整数倍绘制(CSS中设置 image-rendering: pixelated)。

如何向表演者描述

在描述结果之前先查看实际输出。典型发现:

  • 喷火云雾效果极佳;重新绘制赋予了它们在素材中缺乏的结构。
  • 触及帧边缘、窗户或过曝墙壁的云雾在此比例下显得块状。
  • 身体在喷火峰值时闪烁到近白色,并在剪影帧中映射为深海军蓝,因为调色板跟随素材的光照。如果表演者对此不满意,可以提供保持肤色稳定的选项(尚未实现)。

更改外观

编辑 tools/retro.py 顶部的常量:BODY_PAL(身体调色板,从最深色开始)、FIRE_RAMP(边缘到核心)、for B in (64, 40) 中的尺寸以及 heat = 行的深度曲线。请为同一表演者的所有动作保持调色板固定,以使各动画相互匹配。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相关技能