
Manim 教程从安装到跑通第一支数学动画视频的上手指南【免费下载链接】manimAnimation engine for explanatory math videos项目地址: https://gitcode.com/GitHub_Trending/ma/manimManimManimGL是一个用 Python 编写程序化动画的引擎专门为解释性数学视频设计最初服务于 3Blue1Brown 频道的动画制作。你通过 Scene 类把图形、公式和运动写成代码引擎负责渲染成视频或图片。适合数学/物理教育者、技术内容创作者以及想用代码精确控制画面每一帧的开发者。适合什么场景有哪些限制适合需要精确控制图形位置、形变和节奏的解释类动画例如函数变换、矩阵作用、公式推导逐步演示结果可重复、可版本化管理。适合3D 场景——基于 OpenGL可以直接调整相机角度、移动光源、渲染带贴图的曲面。限制这个仓库的包名是manimgl与 2020 年分叉出来的社区版 manim 包名、安装流程都不同两边的说明不要混用。限制导出视频依赖 FFmpeg用 Tex 渲染数学公式需要另装 LaTeX可选不用公式可跳过Linux 还需 Pango 及其开发头文件。安装步骤与运行验证环境前提Python 3.10 及以上。用 pip 安装pip install manimgl装完先跑仓库自带的示例场景做验证manimgl example_scenes.py OpeningManimExample预期结果弹出一个窗口播放一段简单动画——先是网格被矩阵做线性变换再切换到复平面演示 z→z² 的映射。窗口正常播放且无报错说明环境就绪。如果要基于源码运行改 manimlib 本身再执行git clone https://gitcode.com/GitHub_Trending/ma/manim cd manim pip install -e .最小示例新建一个start.py写一个继承Scene的类from manimlib import * class SquareToCircle(Scene): def construct(self): circle Circle() circle.set_fill(BLUE, opacity0.5) self.add(circle)运行manimgl start.py SquareToCircle窗口弹出后还能直接操作画面滚轮平移、按住 z 滚轮缩放、按住 s 拖动、按住 d 改变 3D 视角按 q 退出。要产出文件而不是只看窗口manimgl start.py SquareToCircle -o渲染完成后自动打开视频默认存到脚本同级的videos/子目录。其他常用参数-w只写文件不打开-s跳到结尾只看最后一帧-so把末帧存成图片存到images/子目录-n 数字跳到第 n 个动画-f全屏播放。核心能力动画是怎么写出来的从用户视角写动画就围绕三件事舞台对象mobject。一切画面元素都是对象Circle、Square、Axes、Text 等用self.add放到舞台上再调方法改颜色、大小、位置。任何方法调用加.animate前缀就会变成插值动画比如grid.animate.shift(LEFT)会把平移过程逐帧播出来。动画类。通过self.play(...)播放ShowCreation描绘轮廓、Write模拟书写、FadeIn/FadeOut淡入淡出、ReplacementTransform(A, B)把 A 变形替换为 B。多个动画可以并列传入同时播放self.wait控制停顿时长。逐帧绑定与公式变形。add_updater、always_redraw让对象每帧重新计算例如括号始终贴着方形的边、数值标签始终等于当前宽度Tex用 LaTeX 渲染公式TransformMatchingTex按子串匹配把公式的各部分移动到新的位置——数学视频里公式平滑变形的效果就是它做的。典型使用场景输入、操作、输出函数与变换可视化。输入一个函数或矩阵。操作建好Axes/NumberPlane坐标系用get_graph画出曲线用apply_matrix、apply_complex_function对网格施加变换。输出一段展示坐标系随之形变的视频。仓库example_scenes.py里的OpeningManimExample、GraphExample都是可直接运行的完整样例。公式逐步推导。输入若干行等价变形的公式。操作Tex创建各行用TransformMatchingTex配合matched_keys、key_map指定各部分怎么对应比如把对应到-加path_arc让片段带弧线转到位。输出公式碎片各就各位的推导动画TexTransformExample展示了完整流程。3D 曲面与镜头调度。输入Sphere、Torus等曲面可用TexturedSurface贴两张图受光面/背光面。操作在 3D 场景中设置相机欧拉角、给相机帧加持续旋转的 updater、移动light_source。输出可环绕观察的 3D 视频样例见SurfaceExample。使用建议与避坑点先选定版本再装依赖。本仓库是 3b1b 原版 ManimGL社区版在测试、CI 和贡献响应上更活跃README 明确提醒两套安装说明不能互相套用。想低成本入门可以先看社区版想研究原版实现或对照 3Blue1Brown 视频代码则用这个仓库。调试用交互模式别反复重跑整份脚本。在场景里加一行self.embed()动画跑完会打开 IPython shell可以直接敲play、add、wait等命令继续做动画或者干脆不带参数运行manimgl直接进入可交互窗口。输出路径和默认样式统一放在custom_config.yml管理。视频、图片写到哪里图片和声音资源去哪里找默认质量与风格都可以改在运行目录下再放一个同名文件即可覆盖默认值。生态与延伸周边项目与文档3b1b/videos3Blue1Brown 全部视频动画的源码仓库是学习完整场景写法的第一手素材注意较老视频的代码可能与新版不兼容。社区版 manim2020 年从本仓库分叉目标是更稳定、测试更好、更友好地接受社区贡献目前贡献生态最集中在那里。manim_sandboxmanim-kindergarten 团队整理的额外类和视频代码合集该团队同时维护中文文档。本仓库docs/目录包含 getting_started安装、快速上手、配置、示例场景与 documentation 等章节example_scenes.py本身也是最好的参考手册。下一步行动从这两个动作开始先运行manimgl example_scenes.py GraphExample看函数绑定的完整示范再照着docs/source/getting_started/下的快速上手页把最小示例里的 Circle 换成你想做的图形加上第一组self.play——你的第一个场景就跑通了。【免费下载链接】manimAnimation engine for explanatory math videos项目地址: https://gitcode.com/GitHub_Trending/ma/manim创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考