Spaces Aces - Unity Game
This was my senior project at UVU. I worked on a team of 5 people to develop an MVP of an arena space dog-fighting game. Our team got first place at the Digital Media Showcase at UVU in 2022. I worked on pipeline optimisation, realtime FX, procedural systems, modeling, and shaders.
Read more from my team lead: KookaNova: Educator, Developer of Space’s Aces
Project Overview
Project Name: Space Aces
Description
Space Aces was a space arena dogfighting game developed during my senior year of college. The project provided a platform to apply and enhance my skills in various aspects of game development.
Concept art:
My Contributions
Procedural Generation Systems
- Developed procedural generation systems for asteroids, leveraging algorithms to create diverse and dynamic in-game environments.
Houdini Procedural Assets
- Utilized Houdini to design procedural shield meshes and object destruction systems, such as for spaceships, contributing to the game’s realism and interactivity.
Asteroid Tool
- This tool was built in houdini to generate random asteroids for the game level.
- This tool uses TOPS to chache wedges and then scatter them later.
- The scatter tool places the asteroids with random attributes such as scale and orientation in the game world.
Cinematic Work
- I worked on a cinematic for the game that unfortunately never was able to be finished due to circumstances outside my control. However I’ll share some of my work for that portion.
I modeled film fidelity assets in blender and houdini, often using houdini to ask procedural details like sci-fi paneling, greebles, and cabling.
Below are some lookdev renders and early tests. We were setup to use Redshift to render the cinematic.
Planet render tests:
Space Station:
Python Project Management and Pipeline Tool (Pysoma)
- Initiated and developed a Python-based tool to streamline project management and pipeline processes, enhancing team efficiency and workflow.
- This tool was specifically for the cinematic and geared towards film work.
- You can find this tool on another page on my portfolio called Pysoma
Unity Development
- Engaged extensively in Unity, focusing on real-time FX, FX graphs, and Shader Graph to create immersive engine thrusters and ship trails.
- Assisted in modeling, contributing to the visual aspect of the game’s assets.
Engine FX were created using some houdini for basic mesh generation and then a combination of the Unity Shader Graph systems and Unity VFX graph for particle effects:
I also developed tools to automatically generate destruction meshes and even animations from Houdini to be implimented in Unity:
Another challenging system was developing the shield tool. I made a procedural houdini tool to automatically generate a shield mesh for any ship. Then in unity I wrote a fragment shader to handle lasers from other ships shooting the shield and it’s reaction and a charge up animation:
Trim Sheets:
I also introduced the team to trim sheet workflow which really helped our optimisation and general enviornment texturing workflow:
Skills and Technologies
- Procedural Generation: Developed algorithms and systems for generating game content dynamically.
- Python: Crafted a project management tool to automate and streamline workflow.
- Houdini: Used for creating procedural assets and effects.
- Unity: Extensive work on graphics, effects, and overall game mechanics.
Challenges and Solutions
There were numerous challenges including project and team management, version control, and creating standards for the team to work with including code conventions, design patterns, and file management.
Impact and Outcomes
We ended up winning the digital media competition at UVU because of our hard work.It was incredibly rewarding to have a somewhat polished finish project.
Reflections and Learnings
I learned a lot about working on a team and managing workflows, version control, and the importance of pipeline management on large projects. I also found it very rewarding to impliment procedural tools and systems for my other team members to use.
More videos
Hangar screen:
Longer Gameplay video: