The Niantic team, creator of Pokémon Go, did amazing work in creating an iconic map style as a canvas for its game. Here’s how to build a map for location-based games with additional detail like buildings with the Mapbox Unity SDK and Unity.

1 Design in Mapbox Studio

First we used Mapbox Studio to design a base map highlighting roads in dark green with yellow casings, water bodies in a blue texture, and buildings in semi-transparent white. The resulting global map is exposed as a set of tiles on Mapbox servers. Using the Mapbox Unity SDK, I created an imagery module with my custom designed map. This module pulled the tiles and applied them as a texture to a flat rectangle polygon providing the game surface. Here’s the result:

Empty green game map

2 Place buildings in Unity

To add more depth, I used our SDK for Unity to load building data and extrude polygons, sitting right on top of the map. I created the buildings layer with a Mesh Factory module using “building” as the key. I also added triangulation, height, UV, and texture modules to style them like this:

Game map in Unity with 3D buildings

3 Build your game

At this point the map is ready to customize and build your gameplay on top. Below are a couple of characters I pulled from the asset store and placed on the map.

Download the Mapbox Unity SDK and let me know on Twitter what you’re building.

Finished location-based game with characters on the map