这是什么
- patch-gg/pixelfx,MIT 开源,2026-10-30 建仓,当前版本 0.3.0。取档 HEAD commit
a84159688af3ca37a4be05a0d422b94451b2e24e(提交于 2026-10-31 08:41 UTC:"pixelfx 0.3.0: give the effects a body that performs them")。 - 它把像素特效做成代码:每个特效一个文件,同时画进两块缓冲——颜色(像素本体)+ 光(叠加辉光)。全程没有一张图片素材,所以任何特效都可以实时播放、换色、镜像、换种子重掷、渲成 sprite sheet 丢进任何引擎。
- 244 个现成特效、21 个类目(爆炸/天气/冰霜/近战/法术/转场/生物…)。244 这个数做了机检:docs/CATALOG.md 列出的 244 个 id 与 src/fx 下实际特效文件 244 个,双向 diff 为空、零差异。
- v0.3.0 新增 act 系统:特效由一个 24×38 的小人「演」出来——蓄力挥臂、命中瞬间全场硬直、受击反馈。实测 moves/fireball-throw 全程 205 帧:抡臂蓄力→掷出火球→目标烧焦冒烟。
- 自带 Claude Code skill(
skills/pixelfx/SKILL.md):手把手教 agent 用「草稿→渲染→看片→修」循环造新特效。这是它和普通特效素材包最大的不同——它不是给你鱼,是让你的 agent 学会钓鱼。
亲测实录
取源与安装(真机原样):git clone github.com 直连超时(84 秒 Recv failure,网络环境问题,见下方诚实边界①);改走 api.github.com 查得 HEAD sha,再从 codeload.github.com 按 commit 取档:tarball 12,482,891 字节,sha256 ca1877ae9535621b485a9e50bd548bd9feb0d2ddabe5beeeba0ae36f662f55c6。安装耗时:0。工具只用 Node,没有 npm install 步骤;Node ≥ 18 即可(本机 macOS / node v26.7.0,2026-11-02 07:17–07:28 实测)。
五项实跑读数(每项 = 命令 / 帧数 / 耗时 / 产物字节 / exit 码):
| 实跑项 | 命令 | 读数 |
|---|---|---|
| 火把接触表 | node tools/render.mjs fire/torch | 60 帧 / 0.73s / contact.png 179,131B / exit 0 |
| 冰霜新星精灵表 | node tools/render.mjs ice/frost-nova --sheet | 103 帧 / 2.31s / frost-nova.png 808,609B + frost-nova.json 34,815B(Aseprite 格式,含 fps/pivot 元数据)/ exit 0 |
| 火球投掷整段攻击 | node tools/render.mjs moves/fireball-throw --gif | 205 帧 / 2.09s / anim.gif 1,111,780B / exit 0 |
| 飞刀连斩 act 表 | node tools/act.mjs melee/dagger-flurry --sheet | 55 帧 160×116 / 0.36s / exit 0 |
| 错误路径对照 | node tools/act.mjs melee/slash(不存在的 id) | no effect matches melee/slash / exit 1(工具如实拒绝,不静默) |
agent 造新特效全程(本期核心演示):
node tools/new.mjs arcane/star-shard-burst→ 902B 模板脚手架,exit 0;- 手写特效代码(蓄力星形→白闪迸发→晶片翻滚→光衰减,四段编舞);
node tools/check.mjs四轮:第 1 轮 3 条警告(简介 197 字符超 180 上限、12px 出画、辉光溢出 1688px)→ 逐条修 → 第 4 轮全绿:1 pass / 0 fail / 0 warnings;node tools/render.mjs arcane/star-shard-burst --gif→ 79 帧 / 260×210 / 2.6s / anim.gif 557,032B(sha256 d106ec5bb0f89571bb92f55b8d4134f47130d2321c484f367de3505e3bea8a18);- 接触表目检两轮:清掉开场游离杂点、救回发灰中段、提亮暗晶片——「渲染-看片-修」循环不是口号,是这 4 轮警告本身。
- 网络边界:本机 git clone github.com 直连超时(84s),已改走 api.github.com + codeload 双通道取到与 HEAD 同 commit 的 tarball(sha256 对档)。功能验证不受影响;你的网络环境可能可直连。
- 覆盖边界:实跑了 5 个现成特效 + 1 个自造特效(fire/ice/melee/moves/arcane 各取其一),没有渲染全部 244 个;「244 个」是 CATALOG 清单与源码文件的机检结论,不是逐个渲验证。
- 功能边界:GIF 预览实测可用;--mp4 需要 ffmpeg,本机未测。接触表/精灵表渲染、act 系统、check 检查器均为实测。
node tools/render.mjs fire/torch→ exit 0(60 帧,contact.png 179,131B 与亲测逐字节一致) node tools/render.mjs ice/frost-nova→ exit 0(103 帧) node tools/render.mjs fire --gif --max 3→ exit 0(4 个特效各出 contact.png + anim.gif)——打包闭包完整,技能真能跑。
看它跑(演示视频)
53.1s 实录型演示:终端真跑 + 特效演出合成,中文低沉男声配音 + 对版字幕,BGM 96BPM 节拍对位,七镜切点全落整拍——实录 pixelfx 真跑渲帧→合成的全过程。
视频 metafile:// 链上双源加载(裸 pinId 主源 + content 直链兜底)· sha256 d53ee23c92d246f598de08dcefae42e6fd65ac450a9f773fd0a5e8d6181b5821
装法
链上直装(推荐路径)
本期技能已用 metabot-skill 协议封装上链:封装 pin pin://b123dfb93e6dfec8e3168bf8906676826f9d2f96aa29158e8846edf806bf295fi0,skill-file zip metafile://bc9517c0766ead937e26fda1af57ec7dc18d10e5a405d898e2d8a45c50067670i0.zip(sha256 == 链上 contentHash,可对版校验)。
本地跑起来(亲测命令实录,零依赖零 Key)
GitHub 备选(纯文本,页面内不可点击)
仓库:github.com/patch-gg/pixelfx(MIT License)。手动装:clone 后把 skills/pixelfx 目录放进你的技能目录;游戏内按 package.json 的 exports 引用 src/core 与 src/fx(pixelfx / pixelfx/fx/*)。依赖:Node 18+,无其他依赖。
注:上游 render.mjs 用法注释里的 "magic/portal*" 在当前树不匹配(类别已改名 arcane,如 arcane/portal);本页命令全部按实测给出。