It’s time again for another art blog post!
Now that we have the basis of our container section working in the game I can talk to you about a couple of small challenges that come with building art assets for procedural generation.
Within this new area the player needs to navigate through a series of broken containers which are all stacked up against each other. Due to the procedural systems in place, we need the containers to be built to allow the system to lay them out to form a coherent path through this section of the ship. Because of this we need to build a large amount of container variations to allow for every single type of corridor placement. This system works in a similar way to how our corridors are spawned.
Modelling and texturing all the different variations individually would take us far too much time, so we needed an efficient way of doing this. We split the faces of the standard container, leaving us with 5 main pieces: The sides/top, the back, the front doors, the floor, and the frame of the container in which the faces are placed into. Additionally, we needed broken variations of each face of the container, excluding the frame, for the player to move through.
Once these are made, all we had to do is swap out the faces of each container piece to form the appropriate path, combine them into one mesh, and then export them to go into the procedural generation system.
However, by having everything work within a grid system the scale of objects need to be very specific and when working on making assets to realistic proportions, it can generate some difficulties when they don’t necessarily fit.
This led us back to the classic door problem…
To get into some of the containers, the player would have to open these doors to get into them. The problem was that containers in the hold (stacked to the brim) meant that there was no room for the player to open them. This proved fine for the doors on the inside as they were smashed open to create a path, but for the single containers on the edge of the hold we needed the occasional openable door for the player to get in.
The default container doors were far too large and the space between the ceiling and floor meant that the doors would clip through them as they were not paper thin. We could not scale the size of the container frame as it had to fit into the grid, and the container would look incredibly wrong with 2 doors of different sizes.
In the end, I decided to make an additional door variation : A doors within a door! ( I am so happy this exists!)
The smaller door on top of the larger one meant that the door was small enough to fit into the walkway segments when open, and was large enough to fit into the frame of the container. This allowed us to have both variations of door which solved our problem!
Tait also came up with a creative solution to generate a large amount of colour variation on the cargo containers using only a few texture maps.
The idea was to use a base texture and change the saturation within unity to give us many colours using one map. Doing this however, meant that small details such as rust and any painted materials other than the one we wanted would also change colour. What he did was create a decal model slightly over the original which he put on an alpha texture, separating the paint layer that would change colour and the rust layer which does not change, giving us realisitc looking colour variations.
To finish off this blog, we’ll show you some of the content we’ve created to fill up the insides of theses containers. We’ve got a couple of stranger things in there, but I’m not going to show you any of that to save them for the final game, so here are some of the more generic things we have made…
We’re working on a pretty cool section of the ship next which is also pretty secret