📌 项目地址:3b1b/manim | ⭐ 91,323 颗星 | 🔧 Python | 📜 未标注
第一件事:搞清楚你要装的是哪个 manim
GitHub 搜 manim,排第一的是 3b1b/manim,91323 星,Python。但它不是 pip 上那个 manim 包。
事情的原委:这个仓库是 Grant Sanderson(3Blue1Brown 频道作者)为做数学讲解视频写的动画引擎,社区称它为 ManimGL。2020 年,一批开发者把它 fork 成了 ManimCommunity/manim,README 里的原话是:目标更稳定、测试更好、更快响应社区贡献、对新手更友好。
两个项目都活着,但代码不兼容。README 用警告框专门提醒:拿 ManimGL 的安装说明去装社区版,或反过来,都会出问题。
pip 上相关包名有三个:manim、manimlib、manimgl。只有 manimgl 是这个仓库。装错包,后面的报错全是白费时间。本文只讲 ManimGL。
环境要求
Python 3.10 或更高。
系统层面需要 FFmpeg 和 OpenGL。LaTeX 可选,不装也能跑,只是渲染数学公式的场景用不了。Linux 用户额外需要 Pango 及其开发头文件,构建说明在 ManimPango 仓库里。
安装:分两种情况
只用来做动画,不改源码:
# Install manimgl
pip install manimgl
# Try it out
manimgl
跑 manimgl 能出画面,环境就没问题。
想改 manimlib 本身(加功能、调渲染问题),先克隆仓库,在仓库目录里:
# Install manimgl
pip install -e .
# Try it out
manimgl example_scenes.py OpeningManimExample
# or
manim-render example_scenes.py OpeningManimExample
-e 是可编辑安装,改代码立即生效。最后两条命令等价。
Ubuntu/Debian 完整流程
第一步,装系统依赖:
sudo apt update
sudo apt install ffmpeg
sudo apt install python3-pip
sudo apt install libpango1.0-dev
第二步,按需装 LaTeX:
sudo apt install texlive-science texlive-fonts-extra texlive-latex-extra
README 特意说明:这套组合比 texlive-full 小很多,又能覆盖大多数 Manim 项目。我的建议是先不装,等真遇到公式渲染报错再补——普通动画完全不受影响。
第三步,克隆并安装:
git clone https://github.com/3b1b/manim.git
cd manim
然后按上一节的可编辑安装走。
两个版本怎么选
我的标准很功利,看你要干什么。
要做正经项目、需要稳定 API、要查文档和提问——选社区版。它就是为这些目标做的。
想看 3Blue1Brown 的视频到底怎么实现的——选 ManimGL。Grant 的视频代码在 3b1b/videos 仓库公开,拿这套代码配合引擎读,是最直接的路径。代价是 ManimGL 跟着 Grant 做视频的节奏走,没有稳定性承诺,API 可能变。
为什么“精确”是核心
README 的自我定义是 “an engine for precise programmatic animations”,精确排第一位。
数学讲解视频最容易出的毛病:视觉上“差不多”,数学上是错的。一个变换动画里图形怎么动、公式怎么变,如果不是严格对应,观众看到的就是错误信息。用代码写动画,每个动作都显式写在脚本里,错了能定位到具体某一行。这和拖时间线剪视频是两种工作方式——前者可复查,后者靠手感。
91323 星说明这条路被大量的人走过。教数学、做技术讲解,或者纯粹好奇那些动画怎么做出来的,这个仓库值得花一个下午。