Another Year Goes By

Another Year Goes By
Photo by samer daboul from Pexels

I'm currently looking at my version control timeline for Project Astra to see just what I've been doing this past year. As you can see from the date of my last post, it's been a while since I've decided to blog about what I've been doing. This is due to many reasons. The main one is that I wanted to invest the little available time I had into actual game development, instead of documenting what I learned and finished.

Although the blog has been quiet, I've never been more excited about trying to finish the game. Here are some of the things I've worked on:

  • Added a sun/star shader and effects.
  • Added, tested, and tweaked a full post-processing stack as well as volumetric fog. Created my own LUT post process effect.
  • Started work on particle effects.
  • Reworked input using Unity's new Input System.
  • Integrated Unity's Cinemachine system for future Timeline functionality, and changed the camera shaking system to Cinemachine's.
  • Changed loading of assets to use async in preparation for possibly using Unity's Addressables.
  • Reworked my event system and the various manager systems. This was a tedious process.
  • Prototyped a physics-based movement system rather than controlling transforms, which is shaping up to be the base for any type of movement, be it strike fighters or capital ships. This was the thing I was most afraid to tackle, but after finally diving into it, I'm looking forward to implementing various AI decisions based on it.
  • Learning Blender and Houdini for 3D modeling, after having learned and used Maya LT and Modo.

Here's where I hit a bit of a snag. Since Unity announced their scriptable rendering pipelines, I've been periodically testing the preview HDRP (High-Definition Render Pipeline), waiting to see if each release is including the features I need from the built-in pipeline. It's been an ongoing mental battle to decide if I should stick with the built-in deferred pipeline, which won't receive updates, or go with HDRP, which is still undergoing lots of changes.

I finally committed to HDRP, primarily because of the included volumetric fog and decals (both mesh and projected), as well as the better shadows. However, this means that ALL of my shaders will need to be redone, as well as ALL of my post processing stack, due to HDRP now using its own included stack. This is one of the reasons why I don't have any screenshots to show right now. I've already started removing post-processing, shaders, and assets which won't work in HDRP, and so the visuals are pretty much broken. Most of my testing of new mechanics are now in separate projects using primitive shapes.

I've been learning Shader Graph as well as the Visual Effect Graph in preparation for when HDRP becomes production ready with the release of 2019.3. The conversion process to HDRP will take some time, but I believe the visuals and performance will be worth it in the end.