Website powered by

Home a Drone - Technical Breakdown

Better descriptions of this project:
https://www.thislandisdigital.com/#/home-a-drone-technical-breakdown/

This project gathers some of the methods I used to optimize, organize, and produce our game and covers many of the additional hats I wore during production. It also serves as an exploration of the process of making a video game.

I used Light Probe Groups to eliminate the need for real-time lighting and shadows altogether. Due to the organic nature of the environment, I had to create a vast network of probes to match each path and tunnel as it wound its way towards the quarry.

I used Light Probe Groups to eliminate the need for real-time lighting and shadows altogether. Due to the organic nature of the environment, I had to create a vast network of probes to match each path and tunnel as it wound its way towards the quarry.

Light probes saved performance throughout the entire production as new assets were imported into the game. Our plants used light probes to achieve softer illumination and avoid any baking artifacts caused by their artificially carded geometry.

Light probes saved performance throughout the entire production as new assets were imported into the game. Our plants used light probes to achieve softer illumination and avoid any baking artifacts caused by their artificially carded geometry.

I created our game's nav-mesh so it could grow and maintain itself in alignment with the environment itself.

I created our game's nav-mesh so it could grow and maintain itself in alignment with the environment itself.

All static objects in our scene with the exception of plants used Light Baking to significantly reduce performance.

All static objects in our scene with the exception of plants used Light Baking to significantly reduce performance.

I manually set appropriate Lightmap Resolutions for every asset in the scene, ensuring they all either had custom UVs or, in a few cases, generated UVs. Every light in the scene was either set to bake or given strict culling filters.

I manually set appropriate Lightmap Resolutions for every asset in the scene, ensuring they all either had custom UVs or, in a few cases, generated UVs. Every light in the scene was either set to bake or given strict culling filters.

Unity automatically calculates frustum culling to remove objects outside of the camera’s view cone. I spent time researching and setting up Occlusion Culling to remove objects within the camera’s view cone but hidden by other objects.

Unity automatically calculates frustum culling to remove objects outside of the camera’s view cone. I spent time researching and setting up Occlusion Culling to remove objects within the camera’s view cone but hidden by other objects.

It would take several weeks for the game’s own mechanics (and story) to reveal themselves, meaning that the level’s design often preceded the gameplay it was meant for.

It would take several weeks for the game’s own mechanics (and story) to reveal themselves, meaning that the level’s design often preceded the gameplay it was meant for.

As functionality was created, I put together prototypes to test and understand them. These informed my level designs and the development of future mechanics.

As functionality was created, I put together prototypes to test and understand them. These informed my level designs and the development of future mechanics.

Extreme time constraints lead me to purchase an existing pack of plant assets in a style that complimented our game. To optimize them further, I created simple billboards for each plant and calibrated their prefabs’ LOD settings to take advantage of them.

Extreme time constraints lead me to purchase an existing pack of plant assets in a style that complimented our game. To optimize them further, I created simple billboards for each plant and calibrated their prefabs’ LOD settings to take advantage of them.

As production slowed down, marketing took its place. I produced many of the renders we used to show off the game.

As production slowed down, marketing took its place. I produced many of the renders we used to show off the game.

In order to keep the team on the same page, we relied on Plastic for version control. It maintained definitive files for everyone to work from and push updates to.

In order to keep the team on the same page, we relied on Plastic for version control. It maintained definitive files for everyone to work from and push updates to.

If no one is in charge of organization, it won't happen. My scene "groups" helped us establish domains, communicate changes, and keep our content piles under control.

If no one is in charge of organization, it won't happen. My scene "groups" helped us establish domains, communicate changes, and keep our content piles under control.

VR renders each frame twice. It limits where the player can move, where they can see, and how they interact. Designing around these obstacles was an interesting challenge for the team.

VR renders each frame twice. It limits where the player can move, where they can see, and how they interact. Designing around these obstacles was an interesting challenge for the team.