manim icon indicating copy to clipboard operation
manim copied to clipboard

Manim current status and contribution guidelines

Open TonyCrane opened this issue 4 years ago • 10 comments

Hello everyone, I will explain the current status of manim in this issue.

Now there are three main manim versions, and their differences:

  1. The master branch of 3b1b/manim: Rendering on GPU using OpenGL and moderngl. Support interaction and have higher efficiency.
  2. ManimCommunity/manim: (@ManimCommunity is being improved and will be released on pypi) Using multiple backend rendering. There is better documentation and a more open contribution community.
  3. The cairo-backend branch of 3b1b/manim: Rendering on the CPU using cairo. Relatively stable, no longer be developed.

If you want to contribute to manim:

Lastly, thank you very much for using manim and willing to contribute. Enjoy yourself ! 😄

TonyCrane avatar Oct 01 '20 02:10 TonyCrane

What is the current status of the shaders branch?

qo4on avatar Oct 18 '20 12:10 qo4on

What is the current status of the shaders branch?

3b1b is making and perfecting the manim in the shaders branch, which will be faster. But there may be some problems and not stable at present. If you have the ability to solve the problems you met, you can try to use it. But for the pull requests for shaders branch, 3b1b may handle it by himself, in other words, it will make you wait for a long time and may not be merged.

TonyCrane avatar Oct 21 '20 15:10 TonyCrane

In Android, their is no way of making animation or graphs easily, can we use this library to make graphs and animations in android apps??

ShrirangPatil avatar Nov 20 '20 16:11 ShrirangPatil

In Android, their is no way of making animation or graphs easily, can we use this library to make graphs and animations in android apps??

Well, it is a python library, and the development of shaders branch says a bit about the current goals of the projct, i.e. efficiency. Python does not like jvms. The only semi-optimal way to run python on a jvm is using Jython, which is also not exactly efficient. So even if you wrote some wrappers (that i can't imagine writing) to output complete video or link the code with android solutions for generating video (if there are any), it would be a bad time using it. And it would not align with the apparent goals of the project

iliya-malecki avatar Dec 08 '20 20:12 iliya-malecki

@ShrirangPatil Run Manim in Colab from your Android phone.

qo4on avatar Dec 08 '20 21:12 qo4on

What is the current status of the shaders branch?

It is now merged as the new master.

3b1b avatar Feb 04 '21 22:02 3b1b

Update: ManimCE has partial support for OpenGL rendering https://docs.manim.community/en/stable/changelog/0.5.0-changelog.html

naveen521kk avatar Apr 09 '21 19:04 naveen521kk

why could be such situation: self.play(grid.animate.apply_function............ then it shows ( AttributeError: 'NumberPlane' object has no attribute 'animate')

stevehorse avatar Nov 02 '21 20:11 stevehorse

why could be such situation: self.play(grid.animate.apply_function............ then it shows ( AttributeError: 'NumberPlane' object has no attribute 'animate')

Please open a new issue. I guess you are using the old version of 3b1b/manim.

TonyCrane avatar Nov 03 '21 04:11 TonyCrane

Hello everyone, I will explain the current status of manim in this issue.

Now there are three main manim versions, and their differences:

  1. The master branch of 3b1b/manim: Rendering on GPU using OpenGL and moderngl. Support interaction and have higher efficiency.
  2. ManimCommunity/manim: (@ManimCommunity is being improved and will be released on pypi) Using multiple backend rendering. There is better documentation and a more open contribution community.
  3. The cairo-backend branch of 3b1b/manim: Rendering on the CPU using cairo. Relatively stable, no longer be developed.

If you want to contribute to manim:

Lastly, thank you very much for using manim and willing to contribute. Enjoy yourself ! 😄

cklim24 avatar Feb 26 '24 12:02 cklim24