수학 개념을 코드로 움직이는 영상으로 만드는 도구
복잡한 수학적 개념을 눈앞에서 움직이는 그림으로 보여줄 수 있습니다. 코드로 그림의 움직임과 속도를 직접 조절하여, 설명이 필요한 순간에 딱 맞는 장면을 만듭니다. 이 도구는 3Blue1Brown 채널의 영상 제작을 위해 개발된 개인 프로젝트에서 출발했습니다.
버전 선택이 먼저
이 저장소는 ManimGL로 불리며, 3Blue1Brown의 영상 제작에 특화된 버전입니다. 2020년에 커뮤니티가 포크하여 만든 Manim Community 버전과 혼동하지 않도록 주의해야 합니다. 두 버전의 설치 명령과 사용법이 다르기 때문에, 어떤 버전을 쓸지 정한 뒤 해당 버전의 안내만 따라야 합니다. 이 저장소의 패키지는 manimgl이며, manim이나 manimlib으로 설치하면 안 됩니다.
실행 환경 준비
Python 3.10 이상과 FFmpeg, OpenGL이 필요합니다. 수식 렌더링을 원하면 LaTeX도 설치해야 하며, Linux에서는 Pango 개발 헤더가 필수입니다. Windows에서는 MiKTeX를 권장하며, Mac에서는 Homebrew로 FFmpeg와 LaTeX를 설치합니다. Mac의 ARM 프로세서 사용자는 Cairo도 함께 설치해야 합니다. 가상 환경을 사용하는 것이 시스템 패키지와의 충돌을 피하는 데 좋습니다.
장면 실행과 제어
manimgl example_scenes.py OpeningManimExample 명령을 실행하면 간단한 장면이 재생되는 창이 뜹니다. 예제 장면을 살펴보면 문법과 애니메이션 유형을 배울 수 있습니다. 3b1b/videos 저장소에는 실제 영상 제작에 쓰인 코드가 있지만, 오래된 영상의 코드는 최신 버전과 호환되지 않을 수 있습니다. 커맨드 라인에서 -w 플래그를 쓰면 장면을 파일로 저장하고, -s를 쓰면 마지막 프레임만 보여줍니다. -n 플래그는 특정 애니메이션 순번으로 건너뛰는 데 유용합니다.
설정과 문서
custom_config.yml 파일을 통해 출력 경로, 이미지와 소리 파일 위치, 영상 품질 등 기본 설정을 바꿀 수 있습니다. 현재 문서는 3b1b.github.io/manim에서 진행 중이며, 중국어 버전도 별도로 유지 관리되고 있습니다. manim_sandbox 저장소에는 유용한 추가 클래스와 영상 코드가 모셔져 있습니다.
사용 전 판단
이 도구는 MIT 라이선스로 공개되어 있어 자유롭게 사용할 수 있습니다. 다만, 커뮤니티 버전이 더 활발한 기여와 테스트를 받고 있으므로, 안정적인 생태계를 원한다면 커뮤니티 버전을 고려해볼 만합니다. 이 저장소는 3Blue1Brown의 특정 영상 제작 워크플로우에 최적화되어 있어, 일반적인 애니메이션 제작보다는 수학 설명 영상에 더 적합합니다. 설치 전 시스템 요구 사항을 반드시 확인하고, 두 버전의 차이점을 명확히 이해한 뒤 시작해야 합니다.