Building A Galaxy: Procedural Generation in No Man’s Sky

At the 2015 nucl.ai Conference, Innes McKendrick gave a presentation on the procedural generation in No Man’s Sky. It’s the most detailed technical breakdown I’ve seen of everything that has gone into the game.

By details I mean things like the what that the voxel regions on the planets are stored as octrees on cubes, but projected onto spheres, but the voxels are stored as flat arrays. 

image

There’s lot of stuff to learn from here, like how the art concepts interact with the design process, or the way that modular generators can be built up into a whole that’s more than the sum of its parts. They’ve built up a whole toolkit that they use to assemble complex, varied generators. There’s a lot to learn from here, even if you’re generators are less grandiose.

Just the texturing is pretty amazing: even recent open-world games have trouble getting large, open ground to look good from a distance and up close. And Hello Games has worked out techniques for applying triplanar textures to entire planets.

Regardless of how well the game itself does, we’re going to be studying its techniques for a long time to come.

The 2016 nucl.ai conference is July 18th to 20th 2016, in Vienna, Austria. There’s entire tracks dedicated to Procedural Content Generation, Generative Systems and Design. I will, naturally, be trying to keep a close eye on what they post online.