How Computers Draw Weird Shapes (Marching Squares)

How Computers Draw Weird Shapes (Marching Squares)

419.208 Lượt nghe
How Computers Draw Weird Shapes (Marching Squares)
In this video, we start with an interesting animation of blobby objects which we introduce as metaballs. There's a lot of surprisingly intricate ideas behind making these objects render on a screen. We'll see how folks in computer graphics attempted to solve this problem through a really elegant algorithm called marching squares. Marching squares is a really powerful algorithm that allows you to render any implicit function. But what's even more impressive in my opinion is the many clever shifts in perspective that allowed a vague problems such as this one to be transformed into a clear, well-defined, and solvable problem. 0:00 Introduction 3:29 Circles and Ellipses 4:57 Defining the Problem 6:00 A Guessing Game 8:29 Contours around Two Points 10:35 Sampling The Space 12:32 Breaking Down Cases 15:00 A Clever Optimization 17:20 How Marching Squares Works 18:59 Parallel Marching Squares 20:21 How Do Metaballs Work? 24:59 Marching Cubes 25:58 Some Parting Thoughts References/Additional Resources: http://jamie-wong.com/2014/08/19/metaballs-and-marching-squares/ - the initial inspiration for the framework of this video, great introduction to metaballs and how they can be rendered using marching squares. http://www.geisswerks.com/ryan/BLOBS/blobs.html - great resource on implementing metaballs and some of the physics inspirations behind implicit functions Original Marching cubes paper: https://www.researchgate.net/publication/202232897_Marching_Cubes_A_High_Resolution_3D_Surface_Construction_Algorithm Sebastian Lague Video on Marching Cubes: https://www.youtube.com/watch?v=M3iI2l0ltbE Further reading on polynomial approximations of metaball implicit functions: https://www.researchgate.net/publication/242914163_Data_Structure_for_Soft_Objects Implementation Help for Marching Cubes http://paulbourke.net/geometry/implicitsurf/ Excellent lecture by Casey Muratori about Marching Cubes: https://www.youtube.com/watch?v=SDS5gLSiLg0&t=978s https://courses.lumenlearning.com/physics/chapter/19-4-equipotential-lines/ - some of the physics behind equipotential lines in electric fields Support: https://www.patreon.com/reducible Twitter: https://twitter.com/Reducible20 This video wouldn't be possible without the open source library manim created by 3blue1brown and maintained by Manim Community. The Manim Community Developers. (2021). Manim – Mathematical Animation Framework (Version v0.11.0) [Computer software]. https://www.manim.community/ Here is link to the repository that contains the code used to generate the animations in this video: https://github.com/nipunramk/Reducible All music in the video is from Aakash Gandhi