- Rending the scene(00:41:42 - 00:44:35) - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Rending the scene(00:41:42 - 00:44:35)
How I animate 3Blue1Brown | A Manim demo with Ben Sparks

A behind-the-scenes look at how I animate videos.
Code for all the videos: https://github.com/3b1b/videos
Manim: https://github.com/3b1b/manim
Community edition: https://github.com/ManimCommunity/manim/
Example scenes shown near the end: https://github.com/3b1b/manim/blob/master/example_scenes.py...
A behind-the-scenes look at how I animate videos.
Code for all the videos: https://github.com/3b1b/videos
Manim: https://github.com/3b1b/manim
Community edition: https://github.com/ManimCommunity/manim/
Example scenes shown near the end: https://github.com/3b1b/manim/blob/master/example_scenes.py

I added some more details about the workflow shown in this video to the readme of the videos repo: https://github.com/3b1b/videos?tab=readme-ov-file#workflow

These lessons are funded directly by viewers: https://3b1b.co/support

Timestamp:
0:00 - Intro
2:39 - Hello World
10:32 - Coding up a Lorenz attractor
23:46 - Add some tracking points
28:52 - The globals().update(locals()) hack
32:57 - Final styling on the scene
41:42 - Rending the scene
44:35 - Adding equations
48:43 - Where to start

SEV2: https://youtu.be/XEafCqcwBLs

------------------

These animations are largely made using a custom Python library, manim. See the FAQ comments here:
https://3b1b.co/faq#manim
https://github.com/3b1b/manim
https://github.com/ManimCommunity/manim/

All code for specific videos is visible here:
https://github.com/3b1b/videos/

The music is by Vincent Rubinetti.
https://www.vincentrubinetti.com
https://vincerubinetti.bandcamp.com/album/the-music-of-3blue1brown
https://open.spotify.com/album/1dVyjwS8FBqXhRunaG5W5u

------------------

3blue1brown is a channel about animating math, in all senses of the word animate. If you're reading the bottom of a video description, I'm guessing you're more interested than the average viewer in lessons here. It would mean a lot to me if you chose to stay up to date on new ones, either by subscribing here on YouTube or otherwise following on whichever platform below you check most regularly.

Mailing list: https://3blue1brown.substack.com
Twitter:
Instagram: https://www.instagram.com/3blue1brown
Reddit: https://www.reddit.com/r/3blue1brown
Facebook: https://www.facebook.com/3blue1brown
Patreon: https://patreon.com/3blue1brown
Website: https://www.3blue1brown.com
- Intro - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Intro

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:00:00 - 00:02:39
why does bro have the channel logo on his eye 💀 - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

why does bro have the channel logo on his eye 💀

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @k3dr1 様 
00:00:12 - 00:53:41
How do you manage to have that visual environment in parallel and interact with this same environment. - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

How do you manage to have that visual environment in parallel and interact with this same environment.

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @danielstevenmoran7358 様 
00:00:52 - 00:53:41
clear view of the iconic eye! I didn't know it was actually exactly as in the icon! I thought there was a 3:1 ratio between blue and brown, maybe randomly distributed as spots. But it is pretty much exactly as the icon!! - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

clear view of the iconic eye! I didn't know it was actually exactly as in the icon! I thought there was a 3:1 ratio between blue and brown, maybe randomly distributed as spots. But it is pretty much exactly as the icon!!

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @VaibhavShete 様 
00:01:46 - 00:53:41
finally the 3blue1brown  eyes - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

finally the 3blue1brown eyes

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @jaydevdave7369 様 
00:01:46 - 00:53:41
- Hello World - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Hello World

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:02:39 - 00:10:32
*Revelation *Behold, I stand at the door, and knock: if any man hear my voice, and open the door, I will come in to him, and will sup with him, and he with me. - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

*Revelation *Behold, I stand at the door, and knock: if any man hear my voice, and open the door, I will come in to him, and will sup with him, and he with me.

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @JesusPlsSaveMe 様 
00:03:20 - 00:22:12
Anyone knows how to set that up? Or is it even possible in the community version? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Anyone knows how to set that up? Or is it even possible in the community version?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @santhosh_1010 様 
00:06:15 - 00:53:41
In  you've mentioned that you like having this jupiter-esque feeling to the code, while it's still a single file - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

In you've mentioned that you like having this jupiter-esque feeling to the code, while it's still a single file

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @avisorsetti 様 
00:06:38 - 00:53:41
- Coding up a Lorenz attractor - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Coding up a Lorenz attractor

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:10:32 - 00:23:46
love that "I guess one thing I should mention before we move on" is identical conversation and in explainer videos. I really thought it was narration over the video:) - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

love that "I guess one thing I should mention before we move on" is identical conversation and in explainer videos. I really thought it was narration over the video:)

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @stefannordling6872 様 
00:11:32 - 00:53:41
classic programmer moment when presenting a project XD - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

classic programmer moment when presenting a project XD

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @pinpoint7215 様 
00:11:36 - 00:53:41
Showing your past ChatGPT chats like that is brave - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Showing your past ChatGPT chats like that is brave

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @grafzhl 様 
00:12:50 - 00:53:41
nice to see some of chat gpt history from grant - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

nice to see some of chat gpt history from grant

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @adityachk2002 様 
00:13:13 - 00:53:41
Revelation -14And, behold, I come quickly; and my reward is with me, to give every man according as his work shall be.I am Alpha and Omega, the beginning and the end, the first and the last.Blessed are they that do his commandments, that they may have right to the tree of life, and may enter in through the gates into the city. - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Revelation -14And, behold, I come quickly; and my reward is with me, to give every man according as his work shall be.I am Alpha and Omega, the beginning and the end, the first and the last.Blessed are they that do his commandments, that they may have right to the tree of life, and may enter in through the gates into the city.

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @JesusPlsSaveMe 様 
00:22:12 - 00:53:41
this is because you've upgraded to Python 3.12 which includes PEP 709 "comprehension inlining". Comprehensions are now running in the same scope - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

this is because you've upgraded to Python 3.12 which includes PEP 709 "comprehension inlining". Comprehensions are now running in the same scope

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @AssemblyWizard 様 
00:23:40 - 00:53:41
- Add some tracking points - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Add some tracking points

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:23:46 - 00:28:52
for any C++ devs interested in the zip command, you might be interested to know a zip view was added to the ranges library in C++23 - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

for any C++ devs interested in the zip command, you might be interested to know a zip view was added to the ranges library in C++23

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @KX36 様 
00:25:10 - 00:53:41
lmao someone in the background forgot to save and their PC crashed right? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

lmao someone in the background forgot to save and their PC crashed right?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @AnasHart 様 
00:26:10 - 00:53:41
- The globals().update(locals()) hack - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- The globals().update(locals()) hack

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:28:52 - 00:32:57
In python there is a `nonlocal` and `global` keyword which helps python to look for the variable(s) that's after the keyword - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

In python there is a `nonlocal` and `global` keyword which helps python to look for the variable(s) that's after the keyword

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @mmate8932 様 
00:28:52 - 00:53:41
At  I think you could have written:print(f"{f(10)=}") - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

At I think you could have written:print(f"{f(10)=}")

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @ranudar5666 様 
00:29:53 - 00:53:41
One of python’s core philosophies is “were all consenting adults” (really) - and this is a good example.The idea being to not artificially enforce access rules and leave it to the programmer (and convention) to decide. Hacks like this serve a valid purpose for the context! - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

One of python’s core philosophies is “were all consenting adults” (really) - and this is a good example.The idea being to not artificially enforce access rules and leave it to the programmer (and convention) to decide. Hacks like this serve a valid purpose for the context!

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @5hirtandtieler 様 
00:30:15 - 00:53:41
"it's not as dangerous" goes on my list of famous last words - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

"it's not as dangerous" goes on my list of famous last words

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @bhbr-xb6po 様 
00:30:40 - 00:53:41
- absolute horror! The atrocity of the thing in front of me is incalculable! The rate of change in my brain's capacity to think has gone to infinity and the area has somehow become negative! :Shock: and :horror: - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- absolute horror! The atrocity of the thing in front of me is incalculable! The rate of change in my brain's capacity to think has gone to infinity and the area has somehow become negative! :Shock: and :horror:

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @jerryplayz101 様 
00:30:43 - 00:53:41
Regarding the list comprehension: from the REPL in the bottom right I see you're now on Python 3.12. One of the changes in 3.12 is PEP 709, making list comprehensions are fully inlined as a performance improvement. A side effect is that they have access to the same scope as they're placed in, while they used to effectively be a single-use function call to their own inner scope. - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Regarding the list comprehension: from the REPL in the bottom right I see you're now on Python 3.12. One of the changes in 3.12 is PEP 709, making list comprehensions are fully inlined as a performance improvement. A side effect is that they have access to the same scope as they're placed in, while they used to effectively be a single-use function call to their own inner scope.

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @unusedTV 様 
00:32:30 - 00:53:41
Regarding the Ipython scoping "bug", I have a strong suspicion it's because it works the same way the eval() builtin does.In python3, if you dynamically evaluate some code and specify anything inside of the locals=some_dict parameter of the eval function, you get this unusual behavior where sub-scopes don't seem to be able to access variables defined in the same scope as they are (it's particularly annoying with lambdas).Declaring the variable you use that's from outside the scope as global with the "global" keyword does also resolve the issue (because it's properly moved into the global scope, where it would have usually been), but it is nowhere near as convenient as the cursed globals().update trick - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Regarding the Ipython scoping "bug", I have a strong suspicion it's because it works the same way the eval() builtin does.In python3, if you dynamically evaluate some code and specify anything inside of the locals=some_dict parameter of the eval function, you get this unusual behavior where sub-scopes don't seem to be able to access variables defined in the same scope as they are (it's particularly annoying with lambdas).Declaring the variable you use that's from outside the scope as global with the "global" keyword does also resolve the issue (because it's properly moved into the global scope, where it would have usually been), but it is nowhere near as convenient as the cursed globals().update trick

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @pewypolaw 様 
00:32:45 - 00:53:41
the reason why this "bug" has been "fixed" is due to a change in the Python bytecode on how list comprehensions work. Previously, they would be translated to some sort of fake function with its own scope, but in 3.12, it has been changed for performance reasons, hence the issue disappearing. - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

the reason why this "bug" has been "fixed" is due to a change in the Python bytecode on how list comprehensions work. Previously, they would be translated to some sort of fake function with its own scope, but in 3.12, it has been changed for performance reasons, hence the issue disappearing.

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @qexat 様 
00:32:45 - 00:53:41
I love cursed lines, you can't stop doing them but never stop talking about them. - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

I love cursed lines, you can't stop doing them but never stop talking about them.

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @SRG-Learn 様 
00:32:47 - 00:53:41
I think the reason the bug with the list constructors doesn't appear anymore (  ) is because they changed their inner workings in some of the newer python versions (I think 3.12). - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

I think the reason the bug with the list constructors doesn't appear anymore ( ) is because they changed their inner workings in some of the newer python versions (I think 3.12).

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @Stausee1337 様 
00:32:47 - 00:53:41
why not define the variable as non local in the function definition? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

why not define the variable as non local in the function definition?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @Mayur7Garg 様 
00:32:53 - 00:53:41
- Final styling on the scene - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Final styling on the scene

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:32:57 - 00:41:42
OK WTF I did not realize he actually has a quarter brown in his right eye. That's INSANELY COOL 😭😭 - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

OK WTF I did not realize he actually has a quarter brown in his right eye. That's INSANELY COOL 😭😭

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @SwifterYT 様 
00:37:52 - 00:53:41
How is your camera rotating if you no longer have .reorient in the play function? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

How is your camera rotating if you no longer have .reorient in the play function?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @KaseCami 様 
00:38:06 - 00:53:41
In  it looks like the tail is not starting from the dots, but lagging behind. Is this the expected behavior? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

In it looks like the tail is not starting from the dots, but lagging behind. Is this the expected behavior?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @iuryt 様 
00:41:08 - 00:53:41
- Rending the scene - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Rending the scene

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:41:42 - 00:44:35
Why are the paths so much more jagged here when they were very smooth a moment ago? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Why are the paths so much more jagged here when they were very smooth a moment ago?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @TheWebgecko 様 
00:41:43 - 00:53:41
- Adding equations - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Adding equations

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:44:35 - 00:48:43
what is the R followed by triple quotes? Is that a python thing? - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

what is the R followed by triple quotes? Is that a python thing?

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @__8120 様 
00:44:46 - 00:53:41
on Wikipedia and generally speaking on websites rendering tex in browser you can often just copy the alt text or right-click on the image to export the underlying tex, no fancy OCR needed :) - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

on Wikipedia and generally speaking on websites rendering tex in browser you can often just copy the alt text or right-click on the image to export the underlying tex, no fancy OCR needed :)

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @dogwithamug 様 
00:44:50 - 00:53:41
what snipping tool are you using? or what setting to get the full screen guidelines?are the keyboard shortcuts (checkpoint_paste, reorient) within sublime app or automator?thanks! - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

what snipping tool are you using? or what setting to get the full screen guidelines?are the keyboard shortcuts (checkpoint_paste, reorient) within sublime app or automator?thanks!

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @RobBogdan 様 
00:44:54 - 00:53:41
- Where to start - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

- Where to start

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日 
00:48:43 - 00:53:41
Spotted a typo in the captions at : "Manim" became "manum".  (Also, thanks for including full captions, and not just letting YouTube guess what you're saying!) - How I animate 3Blue1Brown | A Manim demo with Ben Sparks

Spotted a typo in the captions at : "Manim" became "manum". (Also, thanks for including full captions, and not just letting YouTube guess what you're saying!)

How I animate 3Blue1Brown | A Manim demo with Ben Sparks
2024年10月12日  @psiphiorg 様 
00:53:08 - 00:53:41

3Blue1Brown

※本サイトに掲載されているチャンネル情報や動画情報はYouTube公式のAPIを使って取得・表示しています。動画はYouTube公式の動画プレイヤーで再生されるため、再生数・収益などはすべて元動画に還元されます。

Timetable

動画タイムテーブル

タイムテーブルが見つかりませんでした。