What is procedural generation?

As the majority on content on my blog is related to procedural generation, I thought I’d give a short, non-technical, introduction on what procedural generation actually is. Enjoy!

If you’ve been following this blog for a while, you’ve probably noticed that I mention procedural generation a lot. In a nutshell, procedural generation is the act of generating things (3d structures, images, sounds) automatically with the computer. Procedural generation is used in architectural design, to create content for games and films (infinite dungeons, cities, worlds, …), and offers a new way to think about creativity.

The procedure in procedural generation ultimately refers to a computer procedure, however, it can be pretty much anything that a computer (or obedient person!) can understand — it doesn’t necessarily have to be low-level code. A simple example of a procedural system is:

Draw a square
Do this 10 times:
  Split a square into four smaller squares

Given this procedure, the computer might output something like this:

Continue reading