MENU

Fun & Interesting

Coding Challenge 180: Falling Sand

The Coding Train 1,118,254 1 year ago
Video Not Working? Fix It Now

It's Genuary 2024! Watch as I attempt to build a falling sand simulation in p5.js using a grid of pixels and simple rules. Code: https://thecodingtrain.com/challenges/180-falling-sand ๐Ÿš€ Watch this video ad-free on Nebula https://nebula.tv/videos/codingtrain-coding-challenge-180-falling-sand p5.js Web Editor Sketches: ๐Ÿ•น๏ธ Falling Sand: https://editor.p5js.org/codingtrain/sketches/AoH40T6fV ๐Ÿ•น๏ธ Falling Sand with Gravity: https://editor.p5js.org/codingtrain/sketches/Ij5i7a3w4 ๐ŸŽฅ Previous: https://youtu.be/Ggxt06qSAe4?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH ๐ŸŽฅ All: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH References: ๐Ÿ”— Genuary: https://genuary.art/ ๐Ÿ”— Sandspiel by Max Bittker: https://sandspiel.club/ ๐Ÿ”— Making a falling sand simulator: https://jason.today/falling-sand ๐Ÿ“• The Nature of Code by Daniel Shiffman: https://natureofcode.com/ Videos: ๐ŸŽฅ Noita 1.0 Launch Trailer by Nolla Games: https://www.youtube.com/watch?v=0cDkmQ0F0Jw ๐Ÿš‚ Wolfram CA: https://youtu.be/Ggxt06qSAe4 ๐Ÿš‚ The Game of Life: https://youtu.be/FWSR_7kZuYg Related Coding Challenges: ๐Ÿš‚ 179 Wolfram CA: https://youtu.be/Ggxt06qSAe4 ๐Ÿš‚ 85 The Game of Life: https://youtu.be/FWSR_7kZuYg ๐Ÿš‚ 107 Sandpiles: https://youtu.be/diGjw5tghYU ๐Ÿš‚ 132 Fluid Simulation: https://youtu.be/alhpH6ECFvQ ๐Ÿš‚ 102 2D Water Ripple: https://youtu.be/BZUdGqeOD0w Timestamps: 0:00 Introduction and references 2:10 About cellular automata 2:47 The rules for a sand simulation 3:36 Code! Creating a grid 5:04 Animating a falling grain of sand 7:32 About matrix columns and rows 8:04 Let's account for the bottom edge 9:09 Adding mouse interaction 9:42 More sophisticated sand behavior 10:43 Oops! Some errors to fix 11:30 Adding randomness 12:26 Handling left and right edges 14:00 Checking if mouse is within the canvas 14:40 Making it more efficient 14:56 More space and more sand 16:55 Adding some color! 18:54 Challenge complete! Let's do some refactoring 20:58 How could we add gravity? 21:57 Wrapping up Editing by Mathieu Blanchette Animations by Jason Heglund Music from Epidemic Sound ๐Ÿš‚ Website: https://thecodingtrain.com/ ๐Ÿ‘พ Share Your Creation! https://thecodingtrain.com/guides/passenger-showcase-guide ๐Ÿšฉ Suggest Topics: https://github.com/CodingTrain/Suggestion-Box ๐Ÿ’ก GitHub: https://github.com/CodingTrain ๐Ÿ’ฌ Discord: https://thecodingtrain.com/discord ๐Ÿ’– Membership: http://youtube.com/thecodingtrain/join ๐Ÿ›’ Store: https://standard.tv/codingtrain ๐Ÿ–‹๏ธ Twitter: https://twitter.com/thecodingtrain ๐Ÿ“ธ Instagram: https://www.instagram.com/the.coding.train/ ๐ŸŽฅ Coding Challenges: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH ๐ŸŽฅ Intro to Programming: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6Zy51Q-x9tMWIv9cueOFTFA ๐Ÿ”— p5.js: https://p5js.org ๐Ÿ”— p5.js Web Editor: https://editor.p5js.org/ ๐Ÿ”— Processing: https://processing.org ๐Ÿ“„ Code of Conduct: https://github.com/CodingTrain/Code-of-Conduct This description was auto-generated. If you see a problem, please open an issue: https://github.com/CodingTrain/thecodingtrain.com/issues/new #pixels #simulation #fallingsand #fluidsimulation #sandpilemodel #generativeart #p5js #javascript

Comment