pypi version
MIT License
Manim Subreddit
Manim Discord
docs

Manim是精确编程动画的引擎,设计用于创建解释性的数学视频

注意,Manim有两个版本。这个存储库最初是由3Blue1Brown用于制作这些视频的动画,并提供特定于视频的代码here在2020年,一群开发人员把它分成了现在的community edition,目标是更稳定,更好地测试,更快地响应社区贡献,并在开始时更加友好。看见this page有关更多详细信息,请参阅

安装

Manim在Python 3.6或更高版本上运行(建议使用Python 3.8)

系统要求有FFmpegOpenGLLaTeX(如果要使用LaTeX,则为可选)。对于Linux,Pango以及它的开发头都是必需的。请参阅说明here

Linux

# Install manimgl
pip install manimgl

# Try it out
manimgl

有关更多选项,请查看Using manim下面进一步说明的部分

如果您想要攻击manimlib本身,请克隆此存储库并在目录中执行:

# Install manimgl
pip install -e . # Try it out
manimgl example_scenes.py OpeningManimExample
# or
manim-render example_scenes.py OpeningManimExample

Windows

  1. Install FFmpeg
  2. 安装LaTeX发行版。MiKTeX是推荐的
  3. 安装剩余的Python包
    git clone https://github.com/3b1b/manim.git
    cd manim
    pip install -e .
    manimgl example_scenes.py OpeningManimExample

Mac OSX

  1. 使用自制软件在终端中安装FFmpeg、LaTeX
    brew install ffmpeg mactex
  2. 使用以下命令安装最新版本的Manim
    git clone https://github.com/3b1b/manim.git
    cd manim
    pip install -e .
    manimgl example_scenes.py OpeningManimExample

虚拟环境安装

  1. 如上所述安装LaTeX
  2. 使用以下命令创建CONDA环境conda create -n manim python=3.8
  3. 使用激活环境conda activate manim
  4. 使用安装Manimglpip install -e .

使用Manim

尝试运行以下命令:

manimgl example_scenes.py OpeningManimExample

这应该会弹出一个播放简单场景的窗口

一些有用的标志包括:

  • -w将场景写入文件的步骤
  • -o将场景写入文件并打开结果的步骤
  • -s跳到末尾,只显示最后一帧
    • -so会将最终帧保存到图像并显示它
  • -n <number>要跳到前面的n‘场景的第8个动画
  • -f要使播放窗口全屏显示,请执行以下操作

有关进一步的配置,请查看customconfig.yml。要添加自定义,您可以编辑此文件,也可以将另一个同名文件“customconfig.yml”添加到运行Manim的任何目录中。例如this is the one为3Blue1Brown录像带。在那里,您可以指定视频应输出到的位置、Manim应在何处查找要读取的图像文件和声音,以及有关样式和视频质量的其他默认设置

翻看一下example scenes来了解它是如何使用的,并且可以随意查看其背后的代码3blue1brown videos来看一组更大的例子。然而,请注意,库的开发通常没有考虑与那些旧视频的向后兼容性。要运行旧项目并保证其工作正常,您必须返回到完成该项目的提交

文档

文档正在进行中,地址为3b1b.github.io/manim还有一个中文版本,由@manim-kindergartendocs.manim.org.cn(中文)

manim-kindergarten编写并收集了一些有用的额外类和一些视频代码manim_sandbox repo

贡献

总是受欢迎的。如上所述,community edition拥有最活跃的贡献生态系统,有测试和持续集成,但这里也欢迎拉入请求。请解释一个给定变化的动机和其影响的例子

许可证

这个项目属于麻省理工学院的许可范围。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。