Create an immersive tower defense game that gives the player the feeling of commanding their way through endless combat.
Take advantage of Unity's High-Definition Rendering Pipeline (HDRP) to create a high fidelity action game.
Make use of Unity's Burst and Jobs packages to create a highly performant experience.
General Info:
Title: Signals of Chaos
Platfrom: PC
Genre: Tower Defense, Shooter
Programming Language: C#
Development Time: 1 year
Engine: Unity
3D Assets: Autodesk - 3ds Max
Textures: GIMP, Incscape, Krita
UI: GIMP, Inkscape
Description:
    You find yourself in a vessel adrift and alone. With no other paths forward you jump into combat against a fiercesome foe. Odds are greatly stacked against you when you do, and the only way to survive is with upgrades, allies, power adjustments and grit. Once you gather enough resources from this endless stream of chaos, you can choose to jump back to safety. If you do, you might begin to realize that there is more to this world than meets the eyes.
Post Mortem:
What Went Right:
Integrating Unity's Burst and Jobs system worked near seamlessly with the holographic system and others, and provided a significant performance boost.
I developed solutions to rendering large amounts of Render To Textures for FUI interfaces both interactable and ambient.
With Unity's new input system I was able to develop a robust commanding binding system that allowed players to easily bind key combinations to various pieces of command functinonality.
What Went Wrong:
At the time of development Unity's HDRP wasn't nearly as feature complete as I was expecting. It would have been useful to have research the state of the pipeline before fully committing to it.
Visualizing and adjusting the many stats for the game's combat proved to be one of the most unexpected challenges with this project. Investing the time in developing tools to help layout and visuallize enemy, ally and player stats would have been worthwhile.
From a design perspective, the game's balance was much further off than it should have been come release. Either early access or some other form of beta testing could have been used to avoid this issue.
What I Learned:
I gained a large amount of experience working with Unity's cutting edge technologies, including Burst, Jobs and HDRP.
I gained a large amount of additional experience profiling and optimizing a project for release.
I realized the importance of researching the current state of technologies before committing them to a project that's in development. It can be better to treat them as they are, and not as you hope they might be in the future.
I realized that with stat heavy project's, investing in visualization tools can be quite worthwhile in the long run.
I realized that getting the community involved in a project as soon as possible can help significantly in that project's successs.