Manim是一个用于精确程序化动画的引擎,专为创建数学解释视频而设计。
注意,Manim有两个版本。这个仓库最初是3Blue1Brown的作者为制作那些视频而创建的个人项目,视频相关的代码可在这里找到。2020年,一群开发者将其分叉成现在的社区版,目标是使其更稳定、测试更完善、对社区贡献反应更快,总体上更易于上手。更多细节请参见此页面。
安装
**警告:**这些说明仅适用于ManimGL。尝试使用这些说明来安装ManimCommunity/manim或使用那里的说明来安装此版本会导致问题。你应该首先决定想要安装哪个版本,然后只遵循你所需版本的说明。
注意:要通过pip直接安装manim,请注意所安装包的名称。这个仓库是3b1b的ManimGL。包名是
manimgl
而不是manim
或manimlib
。请使用pip install manimgl
来安装此仓库中的版本。
Manim运行在Python 3.7或更高版本上。
系统要求包括FFmpeg、OpenGL和LaTeX(可选,如果你想使用LaTeX)。 对于Linux,需要Pango及其开发头文件。请参阅此处的说明。
直接安装
# 安装manimgl
pip install manimgl
# 尝试运行
manimgl
更多选项,请查看下面的使用manim部分。
如果你想修改manimlib本身,请克隆此仓库并在该目录中执行:
# 安装manimgl
pip install -e .
# 尝试运行
manimgl example_scenes.py OpeningManimExample
# 或
manim-render example_scenes.py OpeningManimExample
直接安装(Windows)
- 安装FFmpeg。
- 安装LaTeX发行版。推荐使用MiKTeX。
- 安装剩余的Python包。
git clone https://github.com/3b1b/manim.git cd manim pip install -e . manimgl example_scenes.py OpeningManimExample
Mac OSX
-
使用homebrew在终端安装FFmpeg和LaTeX。
brew install ffmpeg mactex
-
使用以下命令安装最新版本的manim。
git clone https://github.com/3b1b/manim.git cd manim pip install -e . manimgl example_scenes.py OpeningManimExample
Anaconda安装
- 按上述方法安装LaTeX。
- 使用
conda create -n manim python=3.8
创建conda环境。 - 使用
conda activate manim
激活环境。 - 使用
pip install -e .
安装manimgl。
使用manim
尝试运行以下命令:
manimgl example_scenes.py OpeningManimExample
这应该会弹出一个窗口播放一个简单的场景。
一些有用的标志包括:
-w
将场景写入文件-o
将场景写入文件并打开结果-s
跳到结尾只显示最后一帧-so
将最后一帧保存为图像并显示
-n <数字>
跳到场景的第n
个动画-f
使播放窗口全屏
查看custom_config.yml以获取更多配置。要添加自定义设置,你可以编辑此文件,或在运行manim的目录中添加另一个同名的"custom_config.yml"文件。例如,这是 3blue1brown视频的配置文件。在那里你可以指定视频的输出位置、manim应该在哪里查找你想读取的图像文件和声音,以及其他关于样式和视频质量的默认设置。
浏览示例场景以了解如何使用它,并随意查看3blue1brown视频背后的代码以获取更多示例。但请注意,库的开发经常不考虑与那些旧视频的向后兼容性。要运行旧项目并保证其正常工作,你需要回到完成该项目时的提交。
文档
文档正在3b1b.github.io/manim上编写中。还有一个由@manim-kindergarten维护的中文版:docs.manim.org.cn(中文)。
manim-kindergarten在manim_sandbox仓库中编写和收集了一些有用的额外类和视频代码。
贡献
随时欢迎。如上所述,社区版拥有最活跃的贡献生态系统,包括测试和持续集成,但这里也欢迎拉取请求。请解释给定更改的动机和效果示例。
许可证
本项目采用MIT许可证。