Learn how to procedurally generate meshes in Unity 5.6 and above. We start with simple shapes and work our way up to complex, fractal landscapes.
Learn, Understand and Master Procedural Generation with this Intermediate Unity Course.
A powerful tool for making games.
In this course, you will learn to procedurally generate meshes from geometric objects to worlds with randomly generated terrain. Many popular games use some form of procedural generation, from Minecraft to Dwarf Fortress. Mesh generation is just one aspect of procedural generation which encompasses topics such as texture generation, object placement, and even story generation.
By the end of this course, you’ll be able to generate unique and impressive landscapes from code ready to use in your games. Source code is included to help you on your way.
I designed this course to be easily understood by intermediate level coders and users of Unity with no previous experience of mesh generation.
I present examples of increasing difficulty designed to help you to understand exactly how mesh generation is done, and guide you through the theory behind it so that you can be confident in creating your own meshes.
For extra support, you can ask questions in the Q&A section, and I’ve provided the completed code examples for download in each Section. You’ll receive a certificate of completion once you finish the course.
Create an abstract base class to make mesh creation easier and our code tidier.
Coding the quad mesh with shared vertices.
Coding the quad mesh with unique vertices.
Coding a general mesh for all regular polygons.
Coding a 3D quad - create any 3D shape with 8 vertices.
Coding any regular prism or frustum.
Adding vertex colours.
Learn how to make a simple shader that will show the vertex colours.
Add simple UVs to the quads we coded in Section 3 so that we can use textured materials.
Add UVs to the regular polygons we coded in Section 3 so that we can use textured materials.
Add UVs to the prisms and frustums we coded in the previous section so that we can use textured materials.
Manually code normals for the regular polygons.
Code tangents for the regular polygons to display materials with normal maps correctly.
Manually code normals for the prisms and frustums.
Code tangents for the prisms and frustums.
Learn the theory behind calculating normals and tangents for any shape.
Coding normals for any shape.
Coding tangents for any shape.
A quick introduction to using Perlin noise in Unity.
Coding fractal and fBm noise in Unity.
Learn how to code a simple, flat, 2D terrain.
Learn how to code make a mesh look like 2D terrain using noise.
Add simple UVs to the terrain and add a texture.
Learn how to code more complex UVs so that a material's texture follows the direction of the landscape.
Code a mesh for a 3D landscape.
Add UVs and vertex colours to the 3D landscape.
Learn how to code fractal island meshes.
Learn how to code fractal island meshes with a low poly look.
I'm Jenny, a freelance and indie game developer with over 4 years of professional programming experience. I have a Masters degree in Physics with Astrophysics and a PhD in Quantum Information.
I've released a number of games and enjoy teaching and sharing the knowledge I've gained. Currently, I'm working with General Interactive Co. to code and design a winemaking tycoon game called Terroir.
My Udemy courses are aimed at those who already have an understanding of how to program in Unity, and who are ready to learn more advanced techniques.