Coding Challenge 11: 3D Terrain Generation with Perlin Noise in Processing
YouTube Viewers YouTube Viewers
1.68M subscribers
1,054,626 views
0

 Published On May 4, 2016

In this coding challenge, I create a 3D procedural terrain using Perlin Noise and the beginShape() function in Processing. Code: https://thecodingtrain.com/challenges...

šŸ•¹ļø p5.js Web Editor Sketch: https://editor.p5js.org/codingtrain/s...

šŸŽ„ Previous video: Ā Ā Ā ā€¢Ā CodingĀ ChallengeĀ #10.1:Ā MazeĀ Generato...Ā Ā 
šŸŽ„ Next video: Ā Ā Ā ā€¢Ā CodingĀ ChallengeĀ #12:Ā TheĀ LorenzĀ Attr...Ā Ā 
šŸŽ„ All videos: Ā Ā Ā ā€¢Ā CodingĀ ChallengesĀ Ā 

References:
šŸ’¾ beginShape() reference: https://processing.org/reference/begi...
šŸ’¾ noise() reference: https://processing.org/reference/nois...

Videos:
šŸš‚ What is Perlin Noise?: https://thecodingtrain.com/tracks/the...
šŸ”“ Coding Train Live 37: Ā Ā Ā ā€¢Ā CodingĀ TrainĀ LiveĀ 37:Ā 3DĀ TerrainĀ Gene...Ā Ā 

Related Coding Challenges:
šŸš‚ #18 3D Fractal Trees: Ā Ā Ā ā€¢Ā CodingĀ ChallengeĀ #18:Ā 3DĀ FractalĀ TreesĀ Ā 
šŸš‚ #24 Perlin Noise Flow Field: Ā Ā Ā ā€¢Ā CodingĀ ChallengeĀ #24:Ā PerlinĀ NoiseĀ Fl...Ā Ā 
šŸš‚ #112 3D Rendering with Rotation and Projection: Ā Ā Ā ā€¢Ā CodingĀ ChallengeĀ #112:Ā 3DĀ RenderingĀ w...Ā Ā 

Timestamps:
00:00 Introduction to the Challenge
00:46 What do we need to do?
02:14 Draw a rectangular grid!
04:13 Create a flat triangle strip mesh!
06:51 Rotate the surface in 3D!
08:47 Set the z-values of the vertices randomly!
11:04 Create a 2D array to store the z values!
13:31 How do we make the terrain infinite? What is Perlin Noise?
17:03 How do we make the terrain smooth?
17:43 Reduce offsets to get smoother z values
19:17 How do we make it appear as if we are moving over the terrain?
20:30 Change y-offset per frame to create the illusion of flying!
22:05 Thanks for watching!

Editing by Mathieu Blanchette
Animations by Jason Heglund
Music from Epidemic Sound

šŸš‚ Website: http://thecodingtrain.com/
šŸ‘¾ Share Your Creation! https://thecodingtrain.com/guides/pas...
šŸš© Suggest Topics: https://github.com/CodingTrain/Sugges...
šŸ’” GitHub: https://github.com/CodingTrain
šŸ’¬ Discord: Ā Ā /Ā discordĀ Ā 
šŸ’– Membership: http://youtube.com/thecodingtrain/join
šŸ›’ Store: https://standard.tv/codingtrain
šŸ–‹ļø Twitter: Ā Ā /Ā thecodingtrainĀ Ā 
šŸ“ø Instagram: Ā Ā /Ā the.coding.trainĀ Ā 

šŸŽ„ Coding Challenges: Ā Ā Ā ā€¢Ā CodingĀ ChallengesĀ Ā 
šŸŽ„ Intro to Programming: Ā Ā Ā ā€¢Ā StartĀ learningĀ here!Ā Ā 

šŸ”— 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-o...

This description was auto-generated. If you see a problem, please open an issue: https://github.com/CodingTrain/thecod...

#perlinnoise #terraingeneration #procedural #processing

show more

Share/Embed