MENU

Fun & Interesting

Coding Challenge #112: 3D Rendering with Rotation and Projection

The Coding Train 216,758 7 years ago
Video Not Working? Fix It Now

Can I draw and rotate a 3D cube using Processing's 2D renderer with just some math?!?! Yes! Watch to learn more about rotation and projection matrices along with perspective and orthographic projection! Code: https://thecodingtrain.com/challenges/112-3d-rendering-with-rotation-and-projection 🕹️ p5.js Web Editor Sketch: https://editor.p5js.org/codingtrain/sketches/r8l8XXD2A 🎥 Previous video: https://youtu.be/3noMeuufLZY?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH 🎥 Next video: https://youtu.be/XE3YDVdQSPo?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH 🎥 All videos: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH References: 💾 Matrix Multiplication: http://matrixmultiplication.xyz 🗄 Rotation Matrix on Wikipedia: https://en.wikipedia.org/wiki/Rotation_matrix 🗄 3D Projection on Wikipedia: https://en.wikipedia.org/wiki/3D_projection Videos: 🚂 Matrix Math: https://www.youtube.com/watch?v=uSzGdfdOoG8 🚂 Matrix Multiplication for 3D Rendering: https://youtu.be/tzsgS19RRc8 🔴 Coding Train Live 148.1: https://youtu.be/v6EmLhu7C9M?t=3285s Related Coding Challenges: 🚂 #26 3D Supershapes: https://youtu.be/akM4wMZIBWg 🚂 #113 4D Hypercube (aka 'Tesseract'): https://youtu.be/XE3YDVdQSPo 🚂 #142 Rubik's Cube: https://youtu.be/9PGfL4t-uqE Timestamps: 0:00 Introducing today's topic: 3D rendering in 2D 2:08 Let's begin coding! 7:50 Add a projection matrix 12:00 Add a rotation matrix 18:02 Make a cube with 8 points 20:41 Normalize the cube 21:45 Connect the edges 28:09 Add perspective projection 31:36 Conclusion and next steps Editing by Mathieu Blanchette Animations by Jason Heglund Music from Epidemic Sound 🚂 Website: http://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 #3drendering #projectionmatrix #perspectiveprojection #rotationmatrix #processing

Comment