How Hello Games Handles Procedural Generation in No Man's Sky

No Man's Sky is an upcoming science fiction game for PlayStation 4 and PC and is being developed by Hello Games. Perhaps one of the most interesting aspects of this game is the fact that it relies heavily on procedural generation, everything from the planets, vegetation, and even the wild life is procedurally generated and provides a completely unique experience on every planet that you visit. Procedural Generation is certainly a popular topic in the game industry as it opens up completely new possibilities in a video game where structure is really a thing of the past, and the ability to provide every player with a completely new visual experience is undoubtedly an interesting concept. But what does procedural really mean? And how are developers able to keep consistency with the art style, among the chaos that Procedural Generation can often bring. Today at GDC 2015 Art Director Grant Duncan discussed the various tools and techniques they used to bring art and technology together. During the talk Grant Duncan spoke about the perception of Procedural Generation and how many people don't know exactly what Procedural Generation actually means, because it doesn't just mean random elements in the world, and it's not completely different every single time. Rather than artists creating the things that make up the world, it essentially is created by an algorithm and a set of rules that dictate what you end up with in the game. You take all these random elements, creatures, trees, rocks, props, terrains, sky's, you then turn the algorithm on that applies all the rules that you applied to the universe and it generates what you see on screen. Artists at Hello Games would create a base template to work from, which resembles the workflow below.
  • Artist creates a base template
  • Can be handmade or generated art
  • The Variation is then generated
For example, often times there will be a base vertebra for the creature and from this vertebra there can be countless variations built on top of it, whether its different poses, a version of the creature that is more hunched over, and since this are simple things added over the base skeleton of the creature there is no need to and anything like different walk and run cycles, although the team did create a large variation of walks and runs depending on the size and shape of the creature. If the creature is larger it may lumber a bit more, whereas if it were skinny it will be around more more fluid and quickly. There are also different markings that are all procedurally generated on top of the creatures, or fins, scales and spikes. There are library's of hundreds of these different details that can all be applied to a creature to create something unique, even if it is just a small variation in the size of a horn, or the marking on an animal, these are small things that can create a nice randomness across each animal in the world. Even with something like Procedural Generation which generates something random for your world, there still has to be rules set in place for the algorithm. You want to make sure that there is a specific art style for the game. For instance, you don't want to have a fish creature with random anatomy like a horse like head, or hoofs for fins. Things still need to consistent to the creature, and make sense. The same goes for the color, you want to have a set of rules for the color, and you want to implement a color theory system. You don't want to have a world be generated that is completely random with a mismatch of colors that don't feel cohesive, everything needs to feel like it belongs together. Without some type of rules Procedural Generation is going to generate are that is not very pleasing to the eyes. Looking at some of the impressive art that Hello Games is able to create through procedural generation we are excited to get our hands on the game when it eventually launches.