huashu-art-motion

Introduction: 艺术动画 skill:35 种艺术风格、9 种解说语法,用代码让画动起来。
More: Author   ReportBugs   
Tags:
huashu-art-motion 电影画廊:35 种艺术风格,9 种解说语法

让你的 coding agent,把艺术风格写成会动的画。

35 种艺术风格 · 9 种解说语法 · 8 种参数化片段 · 口播整片参考代码

npx skills add alchaincyf/huashu-art-motion

看动画 · 看风格 · 开始使用 · 下载完整样片

动画样片

核心案例:花叔闯进超级玛丽

把自己做成像素主角,跑完一整关。砖块、水管、关卡运动与转场用代码完成,人物用生成帧合成;下面直接截自 65 秒成片。

花叔顶砖触发会员选择,光标从 OpenAI 移到 Claude,获得星芒道具后变大

连吃蘑菇都得先选会员:OpenAI,还是 Claude?选完 Claude,星芒道具落下来,花叔变大。

花叔踩下像素敌人,踢出缩成球的敌人撞飞前方角色,接着顶碎砖块
连踩带踢 · 像素 Sam 与 Dario 客串敌人
花叔钻进水管,镜头穿过绿色隧道进入金币密室,再用扫描线甩镜返回地面
钻进水管 · 金币密室与扫描线甩镜

这组展示的是成片效果;GIF 无声、循环播放。片段时间点与导出参数。

花叔穿越名画

画里真的会动。下面三段来自同一支穿越短片,场景用代码画,角色用生成帧合成。

莫奈日本桥:打水漂,水面泛起涟漪

日本桥上的一次水漂。

古埃及:与圣甲虫互动
古埃及 · 圣甲虫
8-bit:顶方块出金币
8-bit · 顶出金币

看效果

35 种艺术风格真实样片总览

35 段样片各取一帧:同一位少女、同一只橘白猫、同一张桌子,从公元前 40000 年的岩洞一路穿到 2026 年。每一段都在动:梵高的星空在转,马赛克的颜色从石块上流过去,水墨晕染把画面带进下一个时代。

👉 下载全风格样片(MP4)

长卷穿越片:一个人从左走到右,跨过边界的那一刻,世界和他自己的画风一起换(下图是收进仓库的 3 段示范:埃及壁画 → 莫奈《日本桥》→ 8-bit):

长卷穿越片示范:埃及壁画、莫奈日本桥、8-bit 像素

8 种解说语法各有一支可运行示范片(下图每镜取一帧)。此外还有第 9 种「讲解员式财经科普」,提供语法卡和需自备角色的整片代码快照。白板适合跟着口播画关系,Vox 适合图形与信息拼贴:

Kurzgesagt 风格 Kurzgesagt:扁平无描边、尺度穿行 Vox 风格 Vox:剪报、红线、荧光笔
白板风格 白板:笔尖揭开线稿 3Blue1Brown 风格 3Blue1Brown:一个对象形变成下一个
storytime 风格 Storytime:反应特写、笑点停顿 动态文字 动态文字:主词砸进来
发布会风格 发布会:光斑底、毛玻璃卡、大数字 财经图表 财经图表:先轴、后数据、只标一件事

能做什么

你说 它做
「复刻这个动画」「拆一下这段」 先跑拆解脚本量出转场、节拍网格、每段运动热图,再按机制用代码复刻
「做个梵高/莫奈/包豪斯那种的动画」 先设计一帧,再让它动起来;35 张风格配方卡当起点
「用我的口播做一段艺术动画」 镜头表 → 定风格 → 世界画布加镜头 → 输出一条画面轨
「做一个人穿过一幅幅名画的片子」 长卷骨架:每个世界一个段文件,主角一路往右走,跨边界换画风,镜头只进不退
「做解说视频的动画段」 按口播选语法,喂一份 JSON,出一段时长精确到帧的片段(横竖屏、可透明底)
「画面里要有人」 人交给生图模型出帧,代码负责合成、换帧和材质
「配个乐、卡节奏」 BPM 网格、动机换乐器、结尾音效序列,纯代码合成

交付前有一道数字验收:qa.py 量稳定、效率、动感、流畅及文字框景线索,再派一个没参与制作的 agent 只看成片挑问题。


里面有什么

数量
艺术风格配方卡(参数、母题动作、签名转场、当前短板) 35 张,references/风格配方/
对应的场景代码 35 个,scripts/engine/scenes/
解说动画语法卡 9 份;其中 8 种附示范片、参数化片段与示例 spec
口播整片参考代码 混合风格、白板、Vox、讲解员;需自备部分素材,详见目录 README
长卷穿越片示范(骨架+3 段+角色帧库) 1 支,scripts/engine/demos/long_scroll/
转场 艺术风格签名转场与解说转场,包含淡入、硬切和纸面转场
绘画与动画库(笔刷、渲染器、后期、骨架、镜头、图表、排版……) 17 个,scripts/engine/lib/
方法文档(拆解、机制、一帧先行、纯代码绘制、节奏配乐、角色、长卷……) 核心 12 篇,references/01–12;另有可选语音指南
huashu-art-motion/
├── SKILL.md                 # 先判断任务,再按表读对应文档
├── references/              # 01–12 方法文档、35 张风格配方卡、9 张语法卡、正面经验
├── assets/                  # 总览图(README 用)
└── scripts/
    ├── engine/              # 可整个复制走的动画工程:引擎、转场、库、场景、示范片、片段
    ├── analyze/breakdown.py # 把参考动画拆成「能写代码的地图」
    ├── qa.py                # 一键验收
    ├── audio/               # 纯代码合成配乐的模板
    └── font_subset.py ...   # 字体子集、绿幕抠图

依赖:uv、ffmpeg、Playwright Chromium(第一次跑 uv run --with playwright playwright install chromium)。试一下:

cd huashu-art-motion
uv run --with playwright python scripts/engine/render.py --solo 09_postimp --stills 0.3 --out 试渲   # 梵高那一段的一帧
uv run --with playwright python scripts/engine/render.py --spec scripts/engine/examples/t3_finance_chart.json --out 财经图表.mp4

背后的故事

2026 年 10 月初,我在 X 上看到 Tak(@cherry_mx_reds)的一支 15 秒动画:一位少女和一只猫穿过 40000 年艺术史,每个时代只有一秒左右,但画里的东西都在动。

我让 Claude 复刻它。第一版是「一张张画之间做转场」,被我否了:原片每个时代可能就一秒,但画里的元素完全是流动的。于是改成先拆解(量转场、拟合节拍网格、看每段哪里在动),再用代码一层层把画画出来、让它动起来。

做的过程中我跟它说:「我们不只是为了复刻,我需要你积累经验。」所以这个 skill 里记的不只是代码,还有哪些做法被证明有效(references/07-正面经验.md)、每种风格的坑和短板。之后又派了 4 组只读 skill 的 agent 去做它没见过的 20 种风格,把它们各自造的轮子收成统一的库;再加上 8 种 YouTube 解说动画语法,接进了我自己的口播视频管线。最后用同一套东西做了《花叔穿越名画》:23 种画风、2 分 08 秒,我从洞穴一路走到 2026,骨架和其中 3 段也收进来了。


致谢

  • Tak(@cherry_mx_reds) 的《Art History Speedrun》是这个 skill 的起点。16 个艺术时代的场景构图和「少女+猫穿越」的设定沿用了原片的思路,画面全部用代码重新画,配乐脚本里是原创示例乐谱(只保留拆解方法,不保留对原曲的转录);仓库里不含原片的帧、截图或音频文件。想看原作请去他的 X。
  • 解说语法卡里拆解过的频道和资料(Kurzgesagt、Vox、3Blue1Brown、RSA Animate、TheOdd1sOut 等)都在各张卡的「一手参考」里给了链接,仓库只记测量出来的参数,不含他们的画面。
  • 字体都是 SIL OFL 1.1 开源字体,清单和版权见 scripts/engine/lib/fonts/LICENSES.md。

关于作者

🌐 官网 bookai.top · huasheng.ai
𝕏 Twitter @AlchainHust
📺 B 站 花叔 v
▶️ YouTube @Alchain
📕 小红书 花叔
💬 公众号 微信搜「花叔」

许可证

代码和文档:MIT。随便用,随便改,随便造。

例外:笔顺衍生数据reference_films/spacex/spacex_wb/assets/strokes.js沿用 Arphic Public License(原文随文件附带);scripts/engine/lib/fonts/ 里的字体沿用各自的 OFL 许可;花叔的卡通形象与角色帧(scripts/engine/demos/_shared/hero/、scripts/engine/demos/long_scroll/frames/、assets/角色/)以及总览图、示范视频中包含的同一形象,只用于本 skill 的示范,不随 MIT 授权用于其他用途。


女娲 造 Skill。达尔文 让 Skill 进化。艺术动画 让画动起来。

MIT License © 花叔 Huashu


作者的其他项目 · also by 花叔

FanBox · Coding Agent 的驾驶舱


English

huashu-art-motion is an agent skill for making animation with code, where the paintings actually move. It ships 35 art-style recipes (cave painting, Egyptian murals, Van Gogh, Klimt, Bauhaus, Kirby comics, 8-bit, vaporwave, Shinkai and more), each with a working Canvas scene, a style "renderer" and a signature transition; 8 explainer-video grammars (Kurzgesagt, Vox, whiteboard, storytime, kinetic type, 3Blue1Brown, keynote UI, finance charts) with demo films and parameterized clips you drive with a JSON spec, frame-accurate and in landscape, portrait or alpha; a long-scroll skeleton where a character walks left to right through one painting after another (3 sample worlds included); plus a breakdown script that maps a reference animation into cuts, beat grid and motion heatmaps, and a QA script that measures stability, cost per frame, motion and smoothness.

It started as a code-only recreation of Tak's (@cherry_mx_reds) 15-second Art History Speedrun. The scene layouts and the girl-and-cat premise follow his original; every frame here is redrawn in code, and no frames, screenshots or audio from the original are included.

Install: npx skills add alchaincyf/huashu-art-motion. Requires uv, ffmpeg and Playwright Chromium. The skill content is in Chinese. The ninth grammar, presenter-led explainers, ships as a reference implementation and requires your own character assets. Full-narration examples are code snapshots, not ready-to-render projects. Code and docs are MIT; the bundled stroke medians retain the Arphic Public License; bundled fonts keep their SIL OFL licenses; the Huashu character artwork, including its appearance in overview images and demo videos, is for demo use only.

可选媒体能力

基础代码动画不需要语音或图片账号。有素材先沿用;需要生成时,按用户选择和当前环境调用。语音支持 macOS 系统声音和自己的火山复刻音色;图片支持现有文件导入和当前 Agent/MCP 工具桥接。

  • 语音与私人配置:按需配置、可跳过,旧 koubo 入口兼容。
  • 图片工具接入:先生成计划,由 Agent 调用工具,再验收并收纳素材。
  • 兼容性与验证范围:三家安装重装通过;Codex 在线回归通过,Claude Code/Kimi 在线回归受测试账户条件阻塞,待补验。
  • 维护、扩展与发布:公共默认与私人配置分离,升级不覆盖个人选择,发布检查覆盖实际待发 Git 对象。

先运行python scripts/capabilities.py status --explain。新增能力默认未选择、未授权;不能从检测到 Key 或工具推断允许消费。独立图片 API 执行器为后续可选扩展,不会自动切换供应商。

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools
AI Daily Digest