Python manim kütüphanesi ile eğitim animasyonları oluşturma

Gündelik hayatta okullarda ve eğitim kurumlarında birçok matematiksel kavramı anlayamayız (Belkide biz daha farklı anlıyoruz veya anlatamıyorlar.)Ancak eğitim içerikleri üretmek oldukça maliyetli ve yorucu fakat üzülmeyin ,bugün tanıtacağım python kütüphanesi,Grant Sanderson’ın geliştirdiği,manim kütüphanesi 3Blue1brown kanalının kullandığı matematik anlatımı için kullanılan animasyon motorudur.(3Blue1Brown kanalının içerikleri oldukça güzel izlemenizi tavsiye ederim.).Ayrıca bizlerde bu kütüphaneyi kullanarak oldukça güzel içerikler üretebiliriz .İlk olarak kütüphanenin olduğu repoya gidelim ve birşeyler yapalım, (repo:https://github.com/3b1b/manim) Not: ingilizce seviyeniz iyi ise bu yazı yerine ,repo üzerindende kurulum yapıp birşeyler üretmeye başlayabilirsiniz ancak bu yazı ile işiniz oldukça kolaylaşıcaktır.

KURULUMU

Öncelikle içeriklerinizde matematiksel formüller kullanmak istersek TeX kullanmak durumunda kalacağız  fakat korkmayın burada imdadınıza gene ictr ailesi yetişiyor.LaTeX/TeX kullanımı hakkında 2 tane yazımız mevcut part1 ve part2 bu linkler üzerinden erişebilirsiniz.Ben linux kullandığım için linux için kurulumu anlatacağım ancak diğer işletim sistemleri kullanan kullanıcılar  repo:https://github.com/3b1b/manim )’ya girerek kurulumları kolaylıkla yapabilirler.Diğer işletim sistemleri içinde sorunlar çıkarsa yorumlar üzerinden sorularınızı lütfen sorun,Şimdi kuruluma geçelim.Deneme amaçlı masaüstünde bir klasörün içinde açıp, onun içerisinde kurulum yapacağız.

manimvideo

 

görüldüğü üzere  ilk animasyonumuz hazır.Ayrıca seçilen animasyonuda oynatabiliriz. Not:buradaki sahneleri oynatmanız aracı daha iyi tanımanızı sağlayacaktır.

KONSOLDAKİ PARAMETRELER(FLAGLAR)

Bu flagler bizim üretim yaparken çeşitli ayarlamalarımızı konsol üzerinden kolayca yapmamızı sağlayacaktır.

  1. -p playin kısaltılmasıdır.
  2. -l düşük çözünürlük(Hızlı bir şekilde üretilmesi)
  3. -s videonun son karesini gösterir.
  4. -h help flagı kullanılabilen flagları gösterir.

LATEX VE GEOMETRİ KULLANARAK ANİMASYONLAR GELİŞTİRMEK

İlk olarak   manimtest/manim/example_scenes.py dosyasını açıp  ufak bir  yazı animasyonu hazırlayalım ve kaydedelim.

Komutunu konsolda yazarak çıktıyı görebiliriz.

Şimdi ise  ufak daire ve bir deneme  yazısı çizip konumuzu kapatalım.

Eğer matematiksel denklemlerle uğraşmak istiyor isek zaten examples_scenes.py dosyası içerisindeki sınıflar içerisinde örnekler mevcut.Örneğin WriteStaff sınıfına ait example_tex değişkeninde mevcut ki latex’in sytnaxini öğrenmek için gerekli kaynaklar eski yazılarımızda part1 ve part2  de  mevcuttur.Ayrıca çok daha fazla kaynağa ve araca kaynakçadaki linklerden ulaşabilirsiniz.

NOT:AYRICA BİRKAÇ ANİMASYONU ARD ARDA ÇALIŞTIRMAK İSTERSEK

python3 -m manim example_scenes.py OpeningManimExample WriteStuff Deneme -p  şeklinde çalıştırmak istediğimiz sınıfları ard arda  çalıştırıp videomuzu kaydedebiliriz.
Not: -pl şeklinde yazarsak hızlıca kaydeder fakat kaliteli bir şekilde çıkmaz çünkü -l düşük kalitelidir.

KARŞILAŞILABİLECEK HATALAR

Bireysel olarak karşılaştığım  2 hatayı ilk olarak  paylaşmak istiyorum.İlk olarak hatalar ile karşılaşırsanız size çok güzel log kaydı sunuyor,Log kayıtlarına manimtest/manim/media/Tex/ “ Dosya yolundan ulaşabilirsiniz.Benim karşılaştığım hatalar ise şunlardı.

  1. ! LaTeX Error: File physics.sty' not found , !
  2. LaTeX Error: File dsfont.sty’ not found.

manimtest/manim/manimlib/tex_template.tex içerisinde  2 paketin tanımlamalarını  kaldırarak bu sorunu çözebilirsin.(Çözülmüş olarak aşağıda döküman mevcuttur.)

Artık tanıtımımızın sonuna gelelim daha fazla kaynak için yazının kaynakça bölümündeki kaynaklardan yararlanabilir veya yorum olarak yazabilirsiniz ,eğer bir sorunuz olursa mutlaka sorunuz veya beğenmediğiniz şeyleri yorum yaptığınız taktirde düzeltebiliriz.Herkese iyi çalışmalar.

KAYNAKÇA

  1. https://eulertour.com/docs
  2. https://github.com/3b1b/manim
  3. https://talkingphysics.wordpress.com/2019/01/08/getting-started-animating-with-manim-and-python-3-7/

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir