Grapple Star
Grapple Star is a space action game in development at Left Turn Studios, built in Unity. I was lead Technical Artist on the project alongside the Snuggles and Alien Age work. The most technically interesting problem on this project was a rendering issue with how Unity handles depth-of-field and transparent VFX — a fairly common pain point that required an unconventional solution.
Depth-of-Field Transparency Fix
The game's camera used depth-of-field post-processing to give the background a sense of depth. The problem: Unity's DoF implementation applies the blur pass to the entire scene before compositing transparent geometry. VFX particles — which are transparent — get caught in the blur even when they're in the foreground, close to the camera. The result was foreground VFX that looked soft and disconnected from the action, or disappeared into the background blur entirely.
Disabling DoF entirely wasn't acceptable — the visual depth it produced was part of the game's look. Adjusting the DoF parameters to preserve transparent objects wasn't a viable option in Unity's post-processing stack without losing the background blur. The standard workarounds (render layer sorting, depth prepass tricks) didn't fully solve it for particle systems with varying depth.
The solution was to split the rendering into two cameras using Cinemachine's camera blending and a custom composite output. The background camera renders the scene geometry with full post-processing including depth-of-field. A second foreground camera renders only the VFX layer with post-processing disabled — the particles get no blur pass at all. The two outputs are composited at the end of the frame. The foreground VFX render on top, sharp, regardless of what the background DoF is doing.
The main challenge was making sure depth relationships stayed correct across the two cameras — particles that should occlude background geometry still needed to be occluded by foreground geometry closer to the camera. This required careful depth texture sharing between the cameras and explicit layer mask configuration so each camera knew exactly what to render. Once that was right, the system was stable and didn't require changes as new VFX were added.
Other VFX Work
The project also included a range of gameplay VFX: ship boost effects, collectible trails, and environmental ambience.