Manim Animation Skill 用于以编程方式创建精确、可复用的动画,面向技术博客、教育内容与概念可视化场景,基于 Manim Community Edition(ManimCE)。官方示例:https://docs.manim.community/en/stable/examples.html。
安装(v0.19+):推荐 uv:uv venv && source .venv/bin/activate;uv pip install manim。也可用 pip install manim。检查安装:manim checkhealth。v0.19+ 内部使用 pyav,不再需要外部 ffmpeg。未激活虚拟环境时用 uv run manim ...。Windows 可用 python -m pip install --user uv 安装 uv,若 uv 不在 PATH,重启终端后再试;也可一次性运行:uv run --with manim manim checkhealth。
ManimCE 与 ManimGL:ManimCE 稳定、文档完善、支持 Jupyter(%%manim)与缓存,v0.19+ 不需要 ffmpeg;ManimGL 为实验性、有破坏性变更、需 ffmpeg。除复现特定 3Blue1Brown 视频外,建议使用 ManimCE。
核心概念:Mobjects(屏幕上的数学对象,如 Circle、Text、Code)、Scenes(动画画布,继承 Scene)、Animations(对 Mobjects 的变换,如 Create、Write、FadeIn)。基本结构:from manim import *;class MyScene(Scene):def construct(self):circle = Circle(color=BLUE);self.play(Create(circle));self.wait(1)。
常用对象:Text 支持 t2c 颜色、next_to 定位;Code(v0.19+)须用 code_string 而非 code,指定 language,background 可选 "rectangle" 或 "window",formatter_style 如 "monokai",可用 Code.get_styles_list() 获取样式;Tex 与 MathTex 用于 LaTeX,未安装 LaTeX 时避免 Tex、MathTex 及可能触发 TeX 渲染的数值对象(如 Integer、DecimalNumber、带数学标签的 Variable),改用 Text(str(value), font_size=24)。形状如 Circle、Square、Rectangle、Arrow、Line;图表用 Axes 与 plot。
动画:Create 用于形状,Write 用于 Text/Tex/MathTex,另有 FadeIn(可加 shift)、FadeOut、GrowFromCenter、wait。.animate 语法可动画化方法调用,如 circle.animate.shift(RIGHT * 2)、set_color、scale,并可链式调用。Transform 与 ReplacementTransform 用于形变;self.play 可同时传入多个动画并设 run_time。定位用 UP、DOWN、LEFT、RIGHT、ORIGIN 等常量及 move_to、next_to、shift、align_to;VGroup 用 arrange 或 arrange_in_grid 布局。颜色含命名色、明暗变体(BLUE_A 至 BLUE_E 等)、十六进制及 v0.19+ 的 X11、XKCD 模块。
渲染命令:uv run --with manim manim -pql scene.py SceneName;manim -pql scene.py SceneName(低质量预览);-pqh(高质量);-qm --format=gif(导出 GIF);质量标志 -ql 480p15、-qm 720p30、-qh 1080p60、-qk 4K60;调试 -s(仅输出最后一帧)、-n 1,3(只渲染第 1 至 3 段动画)、--dry_run(只检查错误不输出)。Jupyter 中用 %%manim 魔法命令。
最佳实践:博客动画保持短小聚焦(5–15 秒讲清一个概念),可抽取可复用工厂函数;开发用 -ql,完成后再高质量渲染;不需要 LaTeX 时优先 Text;Manim 自动缓存部分渲染;可将场景拆分为多个方法组织。更多参考见 references/mobjects.md、animations.md、advanced.md、blog-patterns.md 及 examples/ 下的基础场景、流程图、状态图、快速排序示例。官方 GitHub:https://github.com/ManimCommunity/manim。技能文档未提供具体收费与价格信息。