It’s been about a month since my last (big) progress update and suffice to say, I’ve made a number of updates and improvements. First of which, a new world map (literally) with a rotating planet earth which the player will use to select their next destination. Nodes unlock (and secret ones reveal themselves) when levels are completed (or secrets are found) and a preview video showing a looping flyby of the currently selected level plays.
With the world map in a near finished state, I wanted to focus back on the gameplay. I always knew that wanted to have racing levels (akin to Blast Corps) so I started the foundation for them early on, but I wrapped up the time limits/lap times/race times/best times/etc so they are fully functional. The only item left for it now is whether I want the player to be able to choose the vehicle they want to attempt the course with. Continue reading →
In my journey to create a spiritual successor to Blast Corps, I have added many features to make it more familiar. First-off, the introduction flyby showing you both the map and the objects which will need to be cleared has been fully implemented. Using the objects which I have already set as “in the destruction path”, I temporarily change their material color to red so that they stand out for the flyby. After which the helicopter will fly over the path and lower the player in to their starting vehicle for the level.
Next-up is some progress on the levels themselves. I decided to go with a night-themed downtown are as my second level so that I could showcase the building cascade effects (as in you demolish a lower section and the ones above it follow). This was something that I had implemented in the early prototype phase but never got to show-off in the first level (being that it is based in a rural farm/residential area).
Sometimes it’s the small things that seem to make a large impact. In this case, I have just opened up a world of potential secrets and environment designs that will support traveling through tunnels. Now this may not seem like a big deal given how simple of a concept it is. However remember that Unity only supports heightmaps for terrain; meaning you cannot punch holes in it or mold it upside down. Voxels can be used, however they are ~10x more performance intensive, and frankly they always appear blocky to me. As I’m not making Blast Corps meets Minecraft, this just wouldn’t suffice so I set out on “simulating” tunnels. Before I get in to the technical details, here is the final product:
The concept at play here is simple: disable the vehicle -> terrain collisions when inside the tunnel. Originally I had simply disabled the terrain collider upon entering the tunnel trigger zone, however I realized that this would cause the vehicles (and main semi) to fall through the ground upon doing so. Instead I decided to refine this to be a bit more specific and created a new layer called “Ignore Terrain Collision”. As I already had the Terrain on its own layer, it was just a matter of preventing collisions between the two layers in the project physics settings.
Naturally changing this and then adding the vehicle to the new “ignore terrain layer” would cause the vehicle to just fall through the ground anyway, so instead I would toggle the vehicle to the layer upon entering the tunnel. The caveat here is that there needs to be another collider (road for example) beneath the vehicle or else we would fall through the terrain in the tunnel anyway. The same goes for the surrounding tunnel walls or the player could just drive around beneath the terrain. Keeping the road/base and the surrounding tunnel walls on a different layer that collides with the “ignore terrain collision” layer pretty much prevents any unwanted travel once in the tunnel; as it should be.
Just over a month ago I found myself looking to scratch a destruction itch that I didn’t know I could have, so to satiate it I had to turn to the only game (that I am familiar with) that could do this: Blast Corps on the Nintendo 64. I was immediately sucked in again. So much so that I decided to get all of the platinum medals and (subsequently) 100% in the game. Needless to say that I was once again hooked. As I was working on my 3D platforming game Besus: Journey for Vitality at the time, my brain was set in game developer mode. So as I was playing through Blast Corps, I was also breaking down how the various elements worked and how I might go about programming them.
The first development blog since the release of Unity 5, and with that release I naturally ported the project over. This development blog details that (and the changes made to the look of the game as a result of it) as well as:
Detail culling (to save on draw calls)
Early boss battle development
A NPC which you race against (akin to Koopa The Quick)
Almost exactly one year ago I began production on what I consider my dream project – a 3D platformer akin to the greats I loved growing up. My biggest obstacle however was my lack of programming knowledge as I mentioned in my other blog post about transitioning from UDK to Unity. I had played many other projects and seen the great things that they had implemented, but I knew I could never do this unless I learned to program. Not only was the language itself foreign to me, but an even more important element escaped my understanding: the logic. So I began to dissect the existing code base or “starter kits” from the asset store and see how it all worked. I was in luck as I was learning as the logic behind the code began to make sense almost immediately. Before long I knew what I wanted to do and how I could go about it, so now it was just a matter of putting that in to code. Continue reading →