
Manim – 3Blue1Brown's animation engine for explanatory math videos - amingilani
https://github.com/3b1b/manim
======
knolan
I’ve recently moved back into academia. Inspired by 3b1b and horrified by the
awful state of the (PowerPoint) notes that were given to the students of the
modules I now coordinate, I’ve taken to rewriting them using Jupyter and
copious amounts of Blender animations.

I don’t see myself using these tools as I know blender very well and I’ve got
a workflow. Equations can be exported from LaTeXit as SVG and imported into
blender for manipulation and animation. The new eevee real time renderer in
2.8 makes rendering high quality graphics really fast. Then, when appropriate,
I try to recreate the concept in simple Python and animate it so the students
can play with it.

~~~
bsenftner
Checkout mathbox. Mathbox is pure and simply genius.
[https://github.com/unconed/mathbox](https://github.com/unconed/mathbox)

~~~
knolan
Yes please!

------
anonfunction
This type of project would really benefit from some examples of the media it
produces.

~~~
etatoby
You mean such as the entire 3blue1brown YouTube channel that it was created
for?

~~~
anonfunction
Sure, that would be a great thing to include in the README.

------
sethammons
As a former math teacher and now software developer, this is super cool. I no
longer have a need for it, but if I had time, I'd consider reviving some old
lessons. Again, this is really neat.

It would be nice to be able to make it interactive, like slider bars and such.
The ti Nspire had some cool apps for that.

------
Aaargh20318
Where can I find some examples of the output of this ? The github page doesn't
link to an example video or even a screenshot.

~~~
Gladdyu
[https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw](https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw)

~~~
nkozyra
I clicked on the first one and most of the animation is distracting and
superfluous, like bars of a bar graph repeatedly bouncing off each other.

Does that sort of animation really promote learning? How much ornamental
dressing is needed to keep visual attention but not distract?

~~~
andybak
Aren't they meant to be solid masses with particular collision properties? In
which case showing how they collide seems to me exactly want you'd want to
show.

EDIT - I just watched it with sound. I suspect you didn't and misunderstood
the subject matter.

------
waldsonpatricio
Does anybody has a recommendation to animation workflow for algorithms
explanation? I've already tried with tikz and inkscape, but I always give up.

------
billfruit
Does it do 3d? Because geometry and algebra on 3d bodies and rotations,
quarternions, etc do benefit from good visualizations.

~~~
MayorMonty
A lot of his series on differential equations and geometry makes use of 3d
components, presumably from this engine

------
outlace
Why did he give away his secret sauce?

Edit: yes I know this tool isn’t his secret sauce, I was being facetious. His
excellent explanations are his secret sauce. I just wanted to know why he open
sourced this after so long of saying it was made for his personal use and
wasn’t designed for widespread use.

~~~
yathern
Because the "secret sauce" isn't a tool to make animations. The secret sauce
is being able to explain complex concepts in simple terms, while encouraging
curiosity and maintaining math as an approachable topic, for those who may be
otherwise intimidated - and additionally coming up with ideas for animations
that will help explain those concepts. All the while, maintaining a high level
of quality and regularly releasing content, such that you become a "brand".

It's a lot harder to replicate _that_ secret sauce, than it is to replicate
some animation engine.

~~~
roenxi
Mathematicians are all experts at symbol manipulation and tend to communicate
that way. 3b1b uses geometric analogues that are _far_ more useful than
definitions and symbols for learners.

Math teachers are usually stuck using symbols to communicate because not many
mathematicians have 3b1b's skill at animating and so can't use the high-
bandwidth visual medium like he does. A blackboard can't compete with a 3b1b
video; and it isn't just because he thinks clearly, it is because an animation
can get more bits of information through in a short period of time and works
better with a students short term memory. His custom animation tool is more
important than it seems - he can explain more clearly because of a slight-of-
hand where he has a much wider communication channel to get his message
across.

That being said, the barrier to entry is still high. I suspect any topic he
hasn't already covered is going to need specialist knowledge to extend this
program.

~~~
jshowa3
I like 3b1b's animations, but lets not get ahead of ourselves here.

Mathematicians have been using blackboards and symbols for thousands of years,
and its never been a hindrance. While its not as good as video, its more than
adequate to explain things and if you still have issues, you can use the many
mathematical modeling tools that have existed for years.

Also, many of his topics require in-depth knowledge in the first place and
gloss over significant portions of detail because the problems are often
specialized. These details are obscured through the many drawings and it gives
the viewer a false sense of understanding without actually being able to do
the math.

So you're left with a largely conceptual understanding without any syntheses
understanding, because, at the end of the day, you have to produce a line by
line derivation in order to be considered having understanding.

------
JudgeWapner
Just wanted to also give a shoutout to Eugene Khutoryansky for providing a ton
of science and math videos with great 3D visualizations. I'm not sure what 3D
system he uses, perhaps someone here does:

[https://www.youtube.com/watch?v=r18Gi8lSkfM](https://www.youtube.com/watch?v=r18Gi8lSkfM)

[https://www.youtube.com/user/EugeneKhutoryansky](https://www.youtube.com/user/EugeneKhutoryansky)

------
bitforger
I tried using this once... it wasn't super great.

1\. The documentation is sorely lacking.

2\. Which makes the inheritance hierarchy (which is already a little
unintuitive) really hard to grok.

3\. There's this weird home-rolled way of doing default property inheritance
that took me a long time to wrap my head around.

In the end, I ended up coding a short interactive thing[1] for my blog using
Paper.js. It's a great idea, but could really use some love and maybe a
stronger philosophy to guide development. Right now it feels more like a few
hacks thrown together.

[1] [http://mitchgordon.me/math/2019/03/18/multiplying-complex-
nu...](http://mitchgordon.me/math/2019/03/18/multiplying-complex-numbers.html)

~~~
sago
He can't win. People bug him to find out what software he uses. He says he
wrote it. People bug him to release it. And then complain it is not properly
documented or is unintuitive.

'A few hacks thrown together' seems awfully pejorative. It is a tool he has
developed over the years to enable him to produce the high-quality videos he
releases.

~~~
hyperpallium
It's different people making the different complaints.

In general, you can't please all the people all the time.

GP isn't a complaint, but constructive criticism. When we lose the ability to
tolerate criticism, we lose the capability of progress.

~~~
quickthrower2
It's not that constructive though, just seems like a complaint.

~~~
bosie
How do you differentiate those two things?

~~~
quickthrower2
To me constructive means there is a suggestion of how to improve.

~~~
bitforger
Don't get me wrong, I love his videos, and I think it's really nice of him to
open-source the stuff.

But like some of the other comments have mentioned, it's not a general purpose
tool... it's more like he open-sourced his dot files.

You can certainly make a few things work, but it would be nice to see a
community of interested individuals come together to flesh out the
abstractions, make sure everything is documented and works as advertised. As
it is now, the class hierarchy is a little... misshapen. It's not clear what
classes are responsible for what functionality, and how everything fits
together in a nice, orthogonal way.

