Manim, mesin animasi untuk video penjelasan matematika
(github.com/3b1b)- Manim adalah mesin animasi berbasis pemrograman yang presisi untuk membuat video penjelasan matematika
- Ini adalah proyek yang dikembangkan oleh pembuat 3Blue1Brown untuk keperluan video edukasinya sendiri
- Versi fork komunitas juga tersedia, dan terus berkembang dari sisi kemudahan penggunaan, kontribusi, dan pengujian
- Berjalan dengan basis Python, serta memerlukan berbagai dependensi sistem seperti FFmpeg, OpenGL, dan LaTeX
- Bersifat open source (lisensi MIT) sehingga siapa pun bebas menggunakannya dan berkontribusi
Pentingnya dan keunggulan proyek Manim
- Manim adalah mesin animasi open source yang dikembangkan untuk menjelaskan konsep matematika dan sains secara visual dan efektif
- Berbeda dari alat video lain, Manim memungkinkan pembuatan animasi presisi berbasis kode, sehingga sangat unggul untuk memvisualisasikan ide matematika yang kompleks secara bertahap
- Dikelola langsung oleh 3Blue1Brown, dan dinilai sebagai alat yang unik karena dibangun dari pengalaman serta pengetahuan praktis dalam produksi video edukasi
- Versi fork komunitas juga dikembangkan secara aktif secara terpisah, sehingga terbentuk ekosistem yang ramah pengembang dan cepat mengadopsi berbagai perbaikan
Gambaran umum proyek
- Manim adalah mesin animasi pemrograman presisi untuk penjelasan matematika, yang memungkinkan implementasi bebas atas rumus, bentuk geometri, dan pengembangan konsep dari berbagai sudut dalam video
- Awalnya dimulai untuk produksi video edukasi 3Blue1Brown, dan kode khusus terkait juga dipublikasikan secara terpisah di repositori lain
- Pada tahun 2020, versi komunitas di-fork agar lebih banyak orang dapat menggunakannya dengan mudah, dan kini membentuk ekosistem dengan stabilitas, kontribusi komunitas, serta pengujian yang lebih baik
Fitur utama dan persyaratan
- Terdiri dari ManimGL (asli) dan Manim Community Edition (fork komunitas)
- Karena cara instalasi dan penggunaannya berbeda di tiap versi, pengguna perlu menentukan versi yang diinginkan terlebih dahulu
- Saat memasang dengan pip, versi asli dapat diinstal melalui nama paket manimgl
- Membutuhkan Python 3.7 atau lebih baru, serta tambahan seperti FFmpeg, OpenGL, dan pada lingkungan tertentu LaTeX serta Pango untuk Linux
Panduan penggunaan (contoh)
- Menyediakan contoh yang mencakup contoh kode, file scene, dan perintah eksekusi
- Berbagai scene contoh, dokumentasi, serta kode khusus untuk video nyata 3Blue1Brown juga dapat ditinjau dan dimanfaatkan
- Saat dijalankan dari command line, tersedia berbagai flag untuk
- mendukung beragam mode output dan lingkungan yang dapat disesuaikan pengguna, seperti menyimpan file hasil, melewati seluruh scene, dan menjalankan mode layar penuh
- Melalui file
custom_config.yml, pengaturan lingkungan yang lebih rinci seperti gaya, kualitas, dan path dapat dikonfigurasi
Dokumentasi dan kontribusi
- Dokumentasi resmi disediakan di situs terpisah, dan tersedia juga versi berbahasa Tionghoa serta sumber daya kustom tambahan
- Sebagai proyek open source, pull request dan kontribusi komunitas sangat diterima
- Dirilis dengan lisensi MIT, sehingga siapa pun bebas memodifikasi dan mendistribusikannya
Informasi teknis dan statistik
- Terdiri dari bahasa utama seperti Python (96.3%) dan GLSL (3.7%)
- Dengan 80 ribu bintang GitHub dan lebih dari 6.800 fork, popularitas dan partisipasi komunitasnya sangat tinggi
- Lebih dari 167 kontributor yang beragam sedang aktif berpartisipasi
Ringkasan
- Manim adalah mesin animasi pemrograman yang dikhususkan untuk visualisasi matematika dan sains yang akurat serta detail
- Sangat berguna bagi pembuat video edukasi, ahli visualisasi data, dan pengembang yang memerlukan animasi berbasis kode
- Kurva belajar yang cepat, lingkungan yang dapat dikustomisasi, serta kontribusi bebas dan pertumbuhan komunitas menjadi pembeda pentingnya
1 komentar
Komentar Hacker News
Akhir-akhir ini saya merasakan bahwa ini bekerja sangat efektif bila dipakai bersama coding assistant, dengan prompt seperti “butuh diagram yang menunjukkan persamaan X berubah menjadi Y” saya hampir selalu mendapat hasil yang diinginkan dalam sekali coba, mungkin karena sintaksnya sederhana dan banyak contoh
manimopen source yang dipakai untuk pembelajaran, menurut saya ini contoh bagus tentang seberapa banyak waktu yang bisa dihemat oleh agen coding AI, selama video hasil akhirnya bagus saya tidak terlalu peduli dengan proses detailnya sehingga pendekatan seperti itu justru lebih nyamanSaya ingat pernah mendengar di podcast yang menghadirkan Grant Sanderson, dia menyebut pernah mencoba menghasilkan kode
manimsecara otomatis dengan LLM tetapi hasilnya kurang bagus, jadi saya rasa ini berarti ada perbedaan besar antara tingkat kemahiran atau standar yang kita bayangkan dengan yang dibayangkan GrantSaya penasaran bagaimana jadinya jika digabungkan dengan kemampuan RAG pada dokumentasi
Saya pernah memakai Manim untuk materi presentasi kelas dan itu pengalaman yang sangat menyenangkan, banyak orang langsung mengenali gayanya dan presentasinya juga mendapat respons bagus, lalu saya juga cukup beruntung bisa bertemu Grant langsung beberapa tahun lalu, saat saya bilang saya menggunakan Manim dia tampak benar-benar senang, itu sangat berkesan, dia orang hebat yang memberi kontribusi besar bagi pengetahuan dan pemahaman umat manusia
Menurut saya 3b1b benar-benar salah satu keajaiban internet, animasinya indah sekali dan penjelasannya dipoles dengan sangat hati-hati hingga mengagumkan, tapi ada satu hal yang saya tidak pahami: bagaimana satu library bisa mewujudkan animasi untuk konsep yang begitu beragam, rasanya semua itu seperti kerja kustom yang dibuat khusus, atau mungkin Grant memang bekerja pada tingkat pemikiran matematis yang lebih tinggi
Untuk kebanyakan orang, menurut saya tautan ke versi fork komunitas akan lebih cocok, Manim Community GitHub
Proyek buatan Grant memang luar biasa, karena ini bukan sekadar kasus maintainer library open source biasa, melainkan seseorang yang benar-benar peduli dan ahli di domain tersebut lalu membangun dan memeliharanya sendiri karena tidak ada tool yang sesuai untuk aplikasi nyatanya, sementara fork komunitas menurut saya cenderung dibuat oleh orang-orang yang ingin membangun infrastruktur dan berusaha menyesuaikannya untuk banyak use case alih-alih tujuan aslinya, sehingga makin lama menjauh dari maksud awal dan pengalaman pengguna pun dikorbankan, saya melihat ini sebagai perbedaan antara sesuatu yang dibuat oleh praktisi ahli untuk menyelesaikan pekerjaan langsung, dan fork yang dipelihara hanya demi maintenance dan promosi
Saya penasaran apakah fork itu dibuat karena alasan yang bagus atau cuma karena kontroversi, saya sudah membaca penjelasan soal fork tersebut, tetapi meski Grant terus memelihara versi orisinalnya saya masih belum paham alasan pastinya
Saya sedang cukup serius mencari renderer animasi berbasis kode yang fokus pada infografik/grafik/motion graphic umum, bukan yang khusus matematika, opsi yang ada selama ini adalah After Effects, Davinci Fusion, Blender, Cavalry, tetapi setelah dulu pernah memakai PovRay dan kemudian Manim, gagasan tentang tool motion graphic berbasis kode/teks tidak pernah hilang dari kepala saya, rasanya ini akan sangat bersinar bila digabung dengan LLM, belakangan memang mulai muncul layanan motion graphic berbasis ChatGPT, tetapi yang saya inginkan bukan generator video berbasis web seperti itu, melainkan tool yang memakai template kode/bahasa agar bisa dirender berulang untuk data apa pun, serta bisa dipakai offline atau diotomatisasi
Saat saya mencoba Manim sekitar 4 tahun lalu, penggunaannya terasa tidak perlu serumit itu karena semua parameternya seperti terkena
kwargs-itus, semuanya diletakkan sebagaikwargsdan type annotation pun tidak memungkinkan, saya sempat mencoba mendorong perbaikan tetapi tidak mendapat banyak tanggapan, jadi saya penasaran seperti apa kondisinya sekarangProyek ini cukup sering muncul di HN dan biasanya memunculkan diskusi bagus, jadi saya meninggalkan tautan pencarian alih-alih tautan diskusi, hasil pencarian manim di hn
Saya penasaran apakah ada daftar awesome yang memberi gambaran sekilas tentang software
manim, saya kumpulkan beberapa referensi di bawahmanim: manimML, manim-physics, chanim, manim-web(dart), JAnim(java), ranim(rust), manim-voiceover, git-sim, TheoremExplainAgent, reactive-manim, jupyter-manim, manim-sideview(vscode), manim-studio(Qt, Cairo)manimawesome-manimSetahu saya HN biasanya tidak mengizinkan duplikasi tautan yang sama, jadi saya penasaran apakah submit duplikat memang memungkinkan
Saya kumpulkan beberapa tautan diskusi HN lama dan Show HN terkait Manim
Hasil yang diciptakan Grant dengan 3blue1brown dan Manim benar-benar mengagumkan, berkat kualitas video dan visualisasinya yang tinggi, topik yang abstrak pun jadi mudah dipahami, ini sebenarnya sudah disebut di README, tetapi saya tetap sangat ingin merekomendasikan video demo yang memperlihatkan proses kerja Grant dengan Manim (tautan YouTube)
Proyek ini benar-benar keren, dan saya langsung teringat video lama yang mengesankan, Animation vs Math, lalu mengkliknya Animation vs Math di YouTube, saya suka matematika, tetapi rasanya menunjukkan grafik yang sangat besar belum tentu cara yang baik untuk menjelaskannya kepada orang lain