Using blockouts in our workflow #Blocktober
Added 2020-10-31 16:54:36 +0000 UTCAs part of our Patreon posts, we want to start sharing some behind-the-scenes of our workflows. As this month is #blocktober, a gamedev tradition where level blockouts are shared, we decided to cover blockouts and how we use them.
A blockout is also sometimes referred to as a “greybox”, and consists of simple grey shapes (mostly boxes, hence the name). These cubes are used to plan out the shape for a new level, area, or item before art is made. Afterwards, artists can more easily plan out needed art to decorate the planned out area.
We’ve been working on the Amsterdam map for our new game (of which we'll share more next month), so we figured we’d go into the blockout workflow we've used for that map. We're using similar workflows for all 6 maps in the game, though more nature-filled maps differ slightly with an added step of designing terrain.
To start of, we've used a map of Amsterdam, and started marking areas, landmarks, and other things we want to keep in the gamelevel. For example, you can see we kept the famous canal shape, and moved the docks featured in Isle Vatra slightly so they'd still fit in the map. We want to make sure the map isn't too large for a player to travel through, while still offering enough differing areas and offering places needed for the story.

Now we finally get to creating the blockout. With this map, the biggest and most central building is Central Station. So, we’ve started creating a greybox for that building first, as it will let us base the rest of the map on that building for scale reference. We also already have the docks building greyboxed (from Isle Vatra) so we’ll import that as well to compare the scale.
Next up we finally start blocking things out. The centerpoint of this map is Central Station, so we start with that building to reference for scale later on. We also already have a greybox of the docks area we imported, but since this game takes place years earlier, we'll be making some modifications. We continue this for the landmark buildings, and then create the terrain (streets, roads, and canals in this case) around them to match the correct scale and distance between landmarks.
With these buildings, we wanted to keep them medium size, as it would determine the rest of the map to scale with it. Another problem is keeping the area interesting for the player - for example, a giant building with no content in it that the player has to go around a lot would annoy for the player.
We'll take a map or photos of the real building, and see if there's ways through or over/under the building the player might take. For the station, there's 2 underground passages to pass through, along with hallways that lead to the tracks that also connect the two sides of the building. At this stage we just note anything interesting in the building that may be included, and while greyboxing we'll keep in mind to also greybox a rough interior.
This is the blockout we ended up with for the main station building (without the train track buildings behind it):

With the landmarks modeled, and a rough terrain connecting them, it's time to start adding the bulk of the buildings. With a real city, we can use OpenStreetMap's 3D information to import a greybox 3d model of the area, and use parts from it that fit into our map. If it's a fictional location, we there's websites that will generate a vector map from scratch from which city blocks can be copied, or we can use areas that have served as inspiration for the map. Doing it fully by hand is also possible, but only for smaller areas or it'd start taking too much time.
The last step now is to start adding detail to the greybox. We’ll start blocking out interiors in some buildings, and we’ll start blocking in some extra gameplay elements where playtesting shows changes are needed, like stairs to get in and out of the canals in Amsterdam. With the entire city blocked, we can start determining asset lists, see where we can reuse assets, and split buildings into modular parts for the artists to work on while the programmers can start testing out gameplay in the city and do scripting.
So, that’s a look into our blockout workflow. We're gonna try and put one of these posts out monthly to keep you informed of our workflow and processes. If you've got a request for anything specific you'd like to see, let us know in the comments or the Discord. See you next month!