Skip to content
Udemy3D Game DevelopmentPaid courseIntermediate levelCertificate

Procedural Terrain Generation with Unity (Udemy.com)

Programming realistic environments with C# through the algorithmic manipulation of mesh and vegetation data in URP.

Created by: Penny de Byl

Last updated February 2025

icon
What you will learn

  • Use various algorithmic approaches to create procedurally generated content.
  • Manipulated terrain meshes with code to create realistic looking landscapes.
  • Texture terrain meshes procedurally.
  • Discuss the design principles involved in producing aesthetically pleasing terrains.
  • Manipulate the render settings in Unity to produce better looking camera results.
  • Create custom Unity windows and graphical user interface elements for use inside the Editor.

How it compares

Against the other 21 rated Udemy courses in 3D Game Development on CourseDuck:

  • Rating4.6 out of 5higher than 61% of them
  • Reviews1,109#2 of 22 by number of reviews
  • Length29.6 hourslonger than 80% of them
  • Last updatedFebruary 2025more recently than 85% of them

icon
Course Description

Updated for Unity in 2024

The creation of beautiful virtual terrains isn't just the domain of the artist, but also of the programmer. What if you could use your programming skills in C# to manipulate a mesh to create realistic landscapes, using algorithms developed by researchers studying landscape formation and erosion? Well now you can.

In this course, Penny introduces procedural terrain generation techniques using her internationally acclaimed holistic teaching style and expertise from over 25 years of teaching, research and work in games and computer graphics. Throughout the course you will follow along with hands-on workshops, designed to teach you the fundamental techniques used for generating realistic virtual landscapes.

Learn how to program and work with:

  • Voronoi Tessellation

  • Midpoint Displacement

  • Perlin Noise

  • Splat Maps

  • Trees and Vegetation

  • Clouds

  • Weather

  • Erosion

  • Water and new to 2024

  • Working with Multiple Terrain Objects

  • Dealing with URP and HDRP

Contents and Overview
The course begins by examining the nature of a landscape and the design considerations you should include in making decisions on structure, colour and vegetation. You'll learn what makes for a natural looking terrain, so you can replicate this in Unity.

Following on, we will examine some of the most popular algorithms used in generating terrains (including many fractal and tessellation techniques) that can be used together, to form random and yet convincing mountainous vistas.

Once you are confident with landscape formation, we'll move onto texturing the terrain with a variety of images that can be placed via splatmaps onto differing heights and gradients. Then, continue to decorate the terrain with trees, rocks and grass placed with an algorithmic approach before investigating erosion methods, that will add that extra level of realism.

The course concludes with the development of a cloud generation system and an exploration of particle systems for adding rain, snow and other atmospheric effects to the finalised landscape.

Throughout, we'll be developing our own custom Unity editor code that will allow you to build extra functionality and structure into the Unity Inspector, as well as create Editor Windows of your very own.

What students are saying about Penny's courses:

  • Penny is an excellent instructor and she does a great job of breaking down complex concepts into smaller, easy-to-understand topics.

  • Penny's teaching style is exceptionally well-motivated and illustrated.

  • This course is awesome. The lecturer explains everything you need to know and encourages you to experiment and challenge yourself.

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Penny de Byl

Hi, I'm Dr Penny de Byl.  I'm a full stack developer of most things computer sciency and academic with a true passion for teaching.  I've been teaching others about games development, programming, computer graphics, animation and web design for over 25 years in universities in Australia and Europe at the full professor level. I've also consulted for Unity, SAE, the Australian Institute of Entertainment and Wikitude. My best selling textbooks including Holistic Game Development with Unity are used in over 100 institutions world-wide.  My graduates work at companies like Apple, Ubisoft, LinkedIn and Deloitte Digital.

I have an honours degree in computer graphics and a Ph.D. in artificial intelligence for games characters.  Over the course of my career I've won numerous awards for teaching excellence at the state, national and international levels including the Australian Learning and Teaching Council's Excellence in Teaching Award and the Unity Mobile Game Curriculum Competition. My approach to teaching computer science and related fields is project-based giving you hands-on workshops you can immediately get your teeth into.

I want you to leave my virtual classroom fully armed with a toolkit of skills for life-long learning.  I'm excited to now be focussing my efforts full-time on Udemy to bring my years of knowledge and experience to those eager to learn about technology.


icon
More courses by Penny de Byl

$10.99

$14.99

$11.99

$13.99

$11.99

$10.99

icon
More 3D Game Development courses

$79.99

$74.99

$11.99

$59.99

$44.99

Free

icon
Reviews

4.6

1,109 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By JNDEV JNDEV on 6/20/2024

invaluable content on the topic, goes in depth on lots of things. but the delivery of the material is a bit lacking in my opinion, as theres lots of moments with the instructor narrating over any code she writes and copy pasting it into script files instead of explaining what is being done and why. Again the code, the way it works is all invaluable and fun to learn, but its some details that i felt were rushed, theres no overarching project being built its all separate content and by the end up have a perlin noise 3x3 terrain, there is no single package to download for the course, need to pay attention to see when the instructor mentions there are new assets, theres no overarching project being built its all separate content and by the end up have a perlin noise 3x3 terrain. I just finished the course and my biggest dissapointment, all the code worked on throughout the course only applies to single terrain generation! so it all needs to be refactored to function with multiple terrain objects seemlesly. I had other gripes with the project but this issue took the cake i had to edit this review to warn about this. its nice to study the algorithms and all, but by the end the course leads you off a cliff instead of integrating the content to work with multiple terrains from the start. a bit distracting since you have to actually write the code yourself, i end up stopping the videos so I can concentrate and read/write the code being shown instead of understanding what is being done and coding/solving along with the tutorial. also theres no github repo commit associated with each lecture so I have to watch hours of videos to see get an explanantion of each section's final code version. its more of a "heres a tried and tested how to do this" kind of approach, uses outdated methods and goes fast with little hand holding, things like: "here we have a multidimensional array of heightmap pixel points that we iterate over in a nested for loop to yada yada" little to no explaining of how its working.

By Christopher Kempke on 6/20/2021

I've taken several of Dr. de Byl's courses, and while this one is still excellent, it's the most in need of repair and updating. In particular, it makes extensive use of the "Standard Assets" that were no longer included even when the course was made, and several other small things have changed since then. The "water" section, I think, needs a pretty much complete rebuild using volumetric built-in tools rather than continuing to rely on the old standard asset set. If it's being updated, I think it would also be valuable to add a lecture or two on large terrains -- how to make these techniques work across more than one terrain object in a cohesive way so that they can be streamed in for the now-ubiquitous "open world" sort of landscapes. I final suggestion: the course does several steps (adding controls to the editor and serializing them) very frequently. Even after more than a dozen iterations of effectively the same code, the instructor still "walks through" the solution for several minutes each time. A significant amount of course time is spent on what amounts to doing the same thing over and over. I'd suggest that after the third or fourth time, the challenges change to "do this, and if you have trouble, my solution is attached," rather than go through the steps again and again.

By Konrad Bartnicki on 5/9/2020

Amazing course like as other Holistic's courses. Very interesting subject of this course. There are a lot of interesting topic of generating terrain. First we study how to create terrain manaully and the we get more and more advanced knowledge. Course is interesting included many challenges ad lectures are s presented in simple way. Every people who will be get these knowledge want will be glad of this course. Additional I talk that Holistic community love to help in your game development adventure. Thank you Penny and Holistic Team :)

By Arpit Srivastava on 12/25/2019

Great course, concepts and algorithms were explained very well and had a lot of fun. And most importantly learnt about how the terrain system actually works. I can say for sure, this course has given me the right foundation for further developing / testing out new ideas as I understand things much more clearly now. Though, a very few things might not work quite properly in newer versions of Unity like splatmaps disappear from the terrain paint settings after saving or restarting Unity or even in play mode, but regardless of that if someone wants to know how the terrain system works and how to generate environment procedurally, then this course is absolutely worth it, as it gives solid foundation to the necessary algorithms but also gives enough knowledge to try and test out new and different algorithms for generating terrain.

By Olga Brykina on 8/6/2019

Great course, Penny is amazing at explaining! Some parst are objectively super tough though, like errosion mechanics. Too bad terrains are rarely used in real game developement, and I also faced the problem with Tree objects that can be only trees apparently. Even though it seems like you can place any 3D model and give it a Tree behaviour, it doesnt really work. Maybe Unity will change that (if still hasn't). Other that that, I think these methods are possible to use with not a Terrain type of an object as well, but you need to be an advanced programmer to figure it out and modify the code. On top of everything, I actually did use procedural terrain generation on the run for an actual game (university project), but on a simple level like Perlin noise for making random hills, grass, texturing and using Terrain data to randomly scatter interactable objects on it. It also requires the code modification, but it works. So the course was even practically helpful for me. The last part of the course dedicatred to clouds, weather effects, fog and post-processing is not Terrain-specific and is universally useful to know if you make games with Unity. That was super nice to watch! Thank you, Penny!

By Joshua Griffin on 7/22/2019

This was such an amazing course. I cannot believe how much I have learned just from watching and attempting to do exactly what was shown. I have been left inspired and ready to continue learning with Holistic. I think my next project is to make a nice scene and share it with the other students and eventually my classmates in college. I highly recommend this course for you if you are wondering what I should tackle next because it will give you an amazing tool that you can use for the future games you can create with amazing terrains. Thank you for making such a wonderful class. It was quite fun leering about the different algorithms. See you all in the next course.

By Pifeas Panagiotis on 1/20/2019

Was a splendid trip in the "deep" of mathematics and back to the "sun" of creation. A perfect solution for us that we do not have the initiate imagination to create an interesting terrain from zero!!! A perfect solution for us who are lazy to paint and populate via hand our terrain!!! The Instructor was very clear and in depth in all the sections she touched. She is giving the main tools and knowledge to expand/modify the final result to something bigger and more powerful. The introduction to Custom Editors through the Project is an additional asset. 100% Satisfied with trip and the result. Keep up to Good Work Ms. de Byl. P.S.: If in future is there an update of the Course. One nice addition would be the "smooth" connection of other terrains on the main one.

By Paul on 12/3/2018

This course gives you an almost complete procedural terrain editor that is explained excellently. In my view, the mathematics that is used are briliant! The course is taught in a very good, clear and fun way by the instructor. And it works! The terrains that you can get out of the system are of very good quality. Only downside for me is the programming part. Important principles such as S.O.L.I.D are not used. Unfortunately the S of single responsibility has been largely overlooked, making the classes and functions very large. Fortunately, all this can be refactored and can be seen as a good exercise. One little thing what I missed is how you pasted multiple terrains together. Conclusion: A real excellent course with an excellent instructor who answers your questions and teaches the course in a really fun way!

By Jonathan Collins on 7/5/2018

This was my first Udemy course and it was exactly what I needed. I've played around with Unity for a while, but never had a specific goal. Or I had way too many and didn't know where to start. This course gives an excellent overview of Unity's terrain system and the various hooks one can create using custom editor menus to control exactly how you want your terrain to look. There is tons of room for modification on the learner's part and I found myself drifting into experimentation the further I went. The instructor was very clear and easy to understand and was internally consistent with both her code and explanations. Each lesson could almost stand by itself though, so repeating sections once you've gone through it may help you refresh your memory on why you are doing certain things. I've already purchased a few other courses from this instructor, and I can't wait to implement knowledge from those into the terrain I've made!

By Bettina S on 5/27/2018

This is one of the best and most interesting courses I have taken on Udemy so far, and I learned so much about Unity that I now have an entirely new perspective on how it can be used. The topic of terrain generation was very well thought through and presented, I especially liked the chapter on erosion. The knowledge about the various algorithms will be useful for other things, I am sure. I have a lot of ideas to evolve the terrain generator for my particular interests, and I think the course has given me the inspiration and most of the tools I need, so BIG THANKS! Would love to learn more about procedural texture and mesh generation, to generate the vegetation and details.

Showing all 10 reviews on CourseDuck

Read all 1,109 reviews on Udemy

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 92 / 100