Инструменты3 сентября 2026 г., 11:47 МСК🤖 Auto

ManimGL: Как 3Blue1Brown анимирует математику кодом

Разбор библиотеки ManimGL от создателя канала 3Blue1Brown: установка, ключевые отличия от Community-версии и технические требования для создания объясняющих видео.

Баннер новости 6667

Что такое ManimGL и зачем он нужен

Manim (Mathematical Animation Engine) — это программный движок для создания точных программных анимаций, изначально разработанный Грантом Сандерсоном (автор канала 3Blue1Brown) для визуализации сложных математических концепций. В отличие от стандартных видеоредакторов, Manim позволяет генерировать графику через код Python, обеспечивая идеальную синхронизацию визуальных элементов с объяснением.

Важно понимать, что существует две основные ветки проекта. Данный репозиторий (3b1b/manim) является оригинальной версией ManimGL, оптимизированной под специфические нужды канала 3Blue1Brown. В 2020 году из нее был форкнут Manim Community (manim-community/manim), который фокусируется на стабильности, тестировании и удобстве для широкого круга разработчиков. Путаница между ними часто приводит к ошибкам при установке.

Технические требования и установка

Для работы ManimGL требуется Python версии 3.10 или выше. Критически важными системными зависимостями являются FFmpeg (для обработки видео), OpenGL (для рендеринга графики) и опционально LaTeX (для рендеринга формул). Для Linux также необходим пакет Pango.

Установка осуществляется через pip с указанием специфического имени пакета manimgl. Ниже приведена сводка по установке на разных платформах:

Платформа Ключевые зависимости Команда установки
Linux (Ubuntu/Debian) ffmpeg, python3-pip, libpango1.0-dev, texlive-science pip install manimgl или pip install -e . (из исходников)
Windows FFmpeg, MiKTeX (LaTeX) pip install manimgl или pip install -e . (из исходников)
macOS ffmpeg, mactex (или BasicTeX), cairo (для ARM) pip install manimgl или pip install -e . (из исходников)

Ключевые особенности и CLI-флаги

ManimGL предлагает интерактивный режим работы. Запуск сцены происходит через команду manimgl. Библиотека поддерживает ряд полезных флагов командной строки для ускорения разработки:

  • -w: Записать сцену в видеофайл.
  • -o: Записать сцену и сразу открыть результат.
  • -s: Пропустить анимацию и показать только финальный кадр (быстрый просмотр).
  • -so: Сохранить финальный кадр как изображение.
  • -n <number>: Перейти к n-ной анимации в сцене (для отладки).
  • -f: Запустить воспроизведение в полноэкранном режиме.

Конфигурация и документация

Настройка поведения ManimGL осуществляется через файл custom_config.yml. В нем можно задать пути для вывода видео, расположения изображений и звуков, а также параметры стиля и качества видео. Документация по библиотеке находится в стадии активной разработки на сайте 3b1b.github.io/manim, а также существует неофициальная китайская версия документации.

Проект распространяется под лицензией MIT, что позволяет свободно использовать его в коммерческих и личных проектах. Для разработчиков, желающих внести вклад, открыты pull-реквесты, хотя основная экосистема контрибуции сейчас сосредоточена в Community-версии.

Источник: Github ↗