Adventures of an Indie Game Creator, Part 4
Staff Writer By: Sergio Rosa (nemirc)
Previously I discussed how I planned to approach the visual aspect of the game, and how the Unity Asset Store is invaluable when it comes to that. This time I'll show you how I built a few levels with the assets I got.
As I said before, I spent a lot of time looking for assets that were cool, but that would fit nicely with each other. The game will feature a few different locations, like forests, small houses, mountains and so on, so I had to keep that in mind. However, for the small prototype I'm building, I'm only focusing on one area.
One of the advantages of hidden object games is that levels are very small, because they are mostly "scenes" not actual levels that you can navigate. This means I only need to focus on what the camera sees, and make sure that looks good, regardless of what happens outside the camera. Besides, to make sure everyone sees what I'm seeing, I'm restricting the available camera ratios inside Unity to 16:9. As you know, there's a wide variety of monitors and screen resolutions out there, and it can be a pain to make sure your game works in all of them. To be honest, I find that to be more work than it's worth (or maybe I'm just lazy?), so I choose to lock the aspect ratio so everyone sees what I see regardless of screen size and resolution. On the other hand, this lets you control every aspect of your screen composition without having to worry that a part of your image is cropped by someone's monitor.
Remember that I come from a movies background, and, in movies, the aspect ratio is set by the filmmakers, not the devices you're using to watch the films (that's why sometimes you get the black horizontal bars). Locking the aspect ratio will preserve any framing I set for every scene.
One of the sets I bought was a small Diablo-like village with props, trees and things like that. It was all good until I wanted to put some trees in a scene, because the entire set was built to be used on top-down games, so trees looked horrible when seen from the side. This meant I had to find a different pack of just trees that were somewhat cartoony so they would work with my house, but not too cartoony. After combining two packs I got a pretty good result.
For another scene, I had to use some mountains. Since they are distant mountains I could get away with a single mountain that I could scale to simulate different mountains. In this case I also ended up making some modeling myself, to make the rock platform the character is standing on. I used a custom shader made in Shader Forge to combine two different textures based on a color mask, so I could keep the same look for the ground.
In my small prototype I also needed a house interior, and this one was yet another package I got. Again, keeping an eye on the overall style of the assets. Just like before, I only needed to focus on what the camera sees. Building these scenes is similar to building movie sets, because you place stuff in front of the camera and everything behind the camera is empty. In this specific case, it's more noticeable because I literally have walls, a floor and a ceiling, and nothing else. As a tip, I find it better to have my viewport and my game view in two different panes. This makes item placement a lot easier, because I can see my scene and how the final scene will look like in game.
I also used a few screen effects (some included in Unity, some purchased from the Asset Store) to make the scene feel better. Basically I used some brightness-contrast and some ambient fog.
Keep in mind that, even if this game is being built with 3d assets, the entire game is pretty much 2D. However, the 3D part is important when it comes to navigation, since you'll navigate by clicking on the ground, and you don't want the character to get stuck somewhere.
I should have a full mini-demo soon. Right now I'm missing sound, music, and also a main menu.
Unity Asset Store: https://www.assetstore.unity3d.com/
Sergio Aris ROSA