People often wonder how we take 2D mapping data (the kind you see in Google maps, or MapBox or OpenStreetMaps) and push it into a third dimension! The questions around why we do that fizzle out pretty fast when they see Mantle turning these maps into living worlds where it has the potential to propel you into your own child hood street in a fully immersive VR world, when we are on the verge of powering games like Pokemon Go, or when building proposals come alive off the back of unintelligible 2D plans, and when we turn the entire Earth into an alternative dimension!
We are super excited with Mantle as it has the potential to create worlds like The Upside Down from Stranger Things, or a Charlie and the Chocolate Factory world of lollipops and candy (homage to Gene Wilder) - Mantle creates these worlds without any human developers, rather all it needs to create an entirely new Earth is a Theme.
I could go into the technicalities in (what feels like) seemingly infinite detail here, but I won't, mostly because I’m trying to keep this short and also I hope that many of you reading this are not coders and hopefully don’t care about how it’s done as much as what it changes: We want to change the way people create 3D worlds.
When I started looking at what data was out there for Mantle, it felt like it was designed by traditional cartographers thinking only in 2D: this blue blob was a lake, and this green rectangle was a park. But looking beyond this we saw that the underlying data held great potential, a bit like the atom bomb - containing immense energy without anyone really tapping into its explosive potential! I saw different land types from cemeteries to playgrounds and building types with interesting metadata. And there it began. Using my Procedural Content Generation (PCG) background, I realised we could create, extrapolate and infer a third dimension! I could create algorithms which use fuzzy logic to guess the heights of buildings and create a fully operating traffic simulation using the lines and road types in those maps by converting them into directed networks.
Mantle can go to anywhere you like on Earth and procedurally generate all the 3D meshes for the land types you see as well as the roads and buildings in that area. Using a Mantle Theme it decorates the area with materials like grass, water and sand and then intelligently positions objects, like swings, boats, camels or bird sounds in that scene. The designer has control over how Mantle positions things using a particular Mantle Style in a Theme for a given land type. For example any farm Mantle generates can be rendered with one or more grass materials and have a wooden fence around it with sheep (of a given density) scattered around it (with a given noise value) to make it look organic and random. There is great power in the Mantle Style component and along with the two factors mentioned here, there are many more that give the designer strong control over the look of a particular land type no matter where it is on Earth.
Another example might be where a game designer wants to be super original and create a Zombie Apocalypse game (because no one has ever done that before...). A Zombie Mantle Theme would be created which references all the desired Mantle Styles such as one for all cemeteries or shopping malls on Earth. This style would control how to spawn zombies and place tomb stones in rows for effect. We then simply link cemeteries or any other area to that Style and when Mantle is in range of a cemetery it renders it according to that Style. Hey presto: ZOMBIES! Whether the player is in Rio or Reykjavik, Mantle doesn’t care where these things are in the world, just what they are and how to show them if they are ever within range.
I now work with an amazing team of people to propel this forward and my ultimate vision is to see a GTA level of detail in a game which is not just one city but covers the entire Earth, and yet developed on a modest budget without the need for human world builders with Mantle doing the heaving lifting and creating the world - and its spirit - for us.
Till next time, I hope Mantle will help you build your own worlds and I look forward to blogging more about what we’re up to on the technical front!