如何快速上手 3Blue1Brown 的 Manim 数学动画源码
2026/9/15 15:10:44 网站建设 项目流程

如何快速上手 3Blue1Brown 的 Manim 数学动画源码

【免费下载链接】videosCode for the manim-generated scenes used in 3blue1brown videos项目地址: https://gitcode.com/GitHub_Trending/vi/videos

3Blue1Brown 的 Manim 数学动画源码,把频道里那些讲解视频背后的 Python 脚本整个开源了出来。想弄懂某个公式、某个证明是怎么被"画"出来的,可以直接翻到对应年份的脚本看它一步步怎么搭画面;自己想做数学可视化时,这里有成百上千个现成场景可供抄写和改造。整套东西基于 Manim 动画库,用 Python 描述每一帧,公式则交给 LaTeX 渲染。

谁适合用它做数学动画,能学到什么

如果你是给学生讲课的老师,仓库里每个场景都像一份会动的教案,照着它拆解推导的先后顺序,你就能把一次证明拆成几步可以复用的画面,下一步讲什么、先露出哪个条件,都有现成参照。如果你在做科普或自媒体,拿一段现成场景当底稿,换掉几个数字和配色,就能产出一段不重样的演示,不用自己从零想分镜。如果你是刚学 Python、刚听说 Manim 的开发者,这里比官方文档更接近真实用法:变量怎么命名、动画怎么分拍、一个场景里先后出现哪几样东西,打开对应文件就能看到完整做法。读论文时需要一张演示图的同学,也能从主题最接近的目录里找到结构最像的起点,省去自己摸索布局的时间。

仓库里放了什么:年份源码、公共组件、数学对象

内容可以分成三层看。第一层是按年份归档的视频源码,从 2015 一路排到 2025,一年一个目录,当年做的每个视频都有独立脚本,同一年里还会按主题再分文件夹。第二层是 custom/ 里的公共组件:数学小人、背景、片头片尾、Logo、开场引语这些反复出现的元素被单独抽出维护,manim_imports_ext.py 再把它们统一导入,所以几乎每个场景开头只有一行from manim_imports_ext import *。第三层是 once_useful_constructs/,放的是带通用性的数学对象:线性代数、分形、向量空间、样本空间、矩阵乘法各有一块,那些跨视频反复用到的"数学零件"都堆在这里,想造一个新动画时可以先来这里翻。

从零跑通第一个 Manim 动画

环境准备

先把源码拉下来,装好 Manim 和 LaTeX(公式渲染依赖后者):

git clone https://gitcode.com/GitHub_Trending/vi/videos cd videos pip install manim sudo apt install texlive texlive-latex-extra texlive-fonts-extra

有两个容易卡住的点,先记住就行:早期年份的目录可能依赖旧版 API,直接跑不一定成功,建议从_2024/_2025/这类较新的场景起步;渲染慢时先用-r 1280,720降分辨率试跑,确认画面没问题再上高分辨率。

一个能跑的最短场景

新建hello.py,写下面这段:

from manim_imports_ext import * class HelloMath(InteractiveScene): def construct(self): formula = Tex(r"e^{i\pi} + 1 = 0") formula.to_edge(UP) arrow = Arrow(ORIGIN, 3 * RIGHT, buff=0.3) label = Text("向量", font_size=36).next_to(arrow, DOWN) self.play(Write(formula), Create(arrow)) self.play(FadeIn(label)) self.wait(2)

在仓库根目录执行manimgl hello.py HelloMath,就会输出对应的视频文件。整个流程就三步:写场景、跑命令、看输出。

照着别人的场景改一个自己的动画

路径其实很直白:先按主题目录找一段结构最接近的脚本当模板,再把里面你关心的数值、颜色、运动时长改换成自己的,最后渲染出来对比效果。真正提速的是作者的调试方式——在某一行进入交互式终端,用checkpoint_paste()只重跑你选中的那几行代码,改完一处立刻看画面反应,不必从头再跑整段动画。快捷键和相关命令都放在 sublime_custom_commands/,渲染用的分辨率、字体等默认值则写在 custom_config.yml 里,想调画质时再翻这两个文件即可。

想开始的话,先挑一个你真正想讲的主题目录,找一段最接近的场景,改几个参数先跑出一版,通常比照着从零写要快得多。

【免费下载链接】videosCode for the manim-generated scenes used in 3blue1brown videos项目地址: https://gitcode.com/GitHub_Trending/vi/videos

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询