top of page
ChinWeakerThanTheEconomy.png

Hi, I'm Matt, a software developer with over 8 years of professional experience specialising in .NET and Unity. I've delivered applications across desktop, mobile, HoloLens and VR platforms, using technologies including C#, .NET, JavaScript and TypeScript.

Scroll down for my professional work or take a look at my Side Projects

SkipIntro

VR aircraft ground crew maintenance training simulator. Networked with Voice chat for instructor-led sessions; alongside the ability to hold local, solo sessions to practise.

  • Implemented interactions and controls for UI, tooltips, locomotion, physical grab and controllers

  • Debugged and troubleshot issues with external libraries while deployed to device

  • Developed a type agnostic serializer using a TDD approach to streamline the creation of UI for Vuplex

Quest 2, 3 and Pro

Unity / C#

Agora Voice Chat

XR Interaction Toolkit

Vuplex Web UI

VContainer Dependency Injection

In-House Networking

Azure Text to Speech

An interactive, missing person thriller with a mental health message. As you explore the surroundings, the environment responds to your gaze and you begin to piece together a thought-provoking picture.

  • Architected gaze and touch interactions and prefabs to be as modular and accessible to the art team as possible, saving time and effort 

  • Implemented real time lightmap switching for performant lighting changes at runtime

  • Created a sound system for the sound editor to easily play, interrupt and modify sounds from anywhere with just a type reference

Quest 2, 3 and Pro

Unity / C#

Oculus SDK Gaze Interaction

XR Interaction Toolkit

Realtime Lightmap switching

Vuplex Web UI

VContainer Dependency Injection

Shadergraph materials

VR aircraft ground crew maintenance training simulator. Networked with Voice chat for instructor-led sessions; alongside the ability to hold local, solo sessions to practise.

  • Implemented interactions and controls for UI, tooltips, locomotion, physical grab and controllers

  • Debugged and troubleshot issues with external libraries while deployed to device

  • Developed a type agnostic serializer using a TDD approach to streamline the creation of UI for Vuplex

Quest 2, 3 and Pro

Unity / C#

Agora Voice Chat

XR Interaction Toolkit

Vuplex Web UI

VContainer Dependency Injection

In-House Networking

Azure Text to Speech

An interactive, missing person thriller with a mental health message. As you explore the surroundings, the environment responds to your gaze and you begin to piece together a thought-provoking picture.

  • Architected gaze and touch interactions and prefabs to be as modular and accessible to the art team as possible, saving time and effort 

  • Implemented real time lightmap switching for performant lighting changes at runtime

  • Created a sound system for the sound editor to easily play, interrupt and modify sounds from anywhere with just a type reference

Quest 2, 3 and Pro

Unity / C#

Oculus SDK Gaze Interaction

XR Interaction Toolkit

Realtime Lightmap switching

Vuplex Web UI

VContainer Dependency Injection

Shadergraph materials

Forest of Resilience is a Short VR experience to introduce the fundamentals the four stages of mental resilience. It led to a larger project called Camp Resilience, expanding on the same concepts. 

  • Architected and developed the interaction framework which was reused in every project at Born prior to the release of XRITK3

  • Built the world space UI, organising communication between myself, the UX designer and 2D artist

  • Worked with non-technical stakeholders to refine product specifications, addressing feature feasibility and complexity

Quest 2, 3 and Pro

Unity / C#

Unitask Async Integration

XR Interaction Toolkit

DOTween / Timeline

RenderDoc GPU Profiling

Shadergraph shaders

VContainer Dependency Injection

VR Experience debuted at COP28 to highlight the effects of drinking water scarcity in rural Sub-Saharan Africa. Focuses on the story of a girl  called Dagbe who interacts with others and explores their stories

  • Developed a system to manage timelines for multiple overlapping characters and interactions, syncing voiceover, animations and effects

  • Created a subtitle system to unobtrusively follow the user's focus   

  • Added Javascript to static webpages to allow communication with Unity via Vuplex Web UI

Quest Pro

Unity / C#

Animation Blend Trees

XR Interaction Toolkit

Unity Timeline

Vuplex Web UI

Javascript 

GPU + CPU Optimisation

Training simulation focusing on how to safely deal with hazards in the day to day running of a US-based gas station. 

  • Used Bolt visual scripting system to script over 40 mini-lessons, creating custom nodes in C# whenever necessitated 

  • Designed and created a system to procedurally generate capstone levels from a list of tasks based on a user's learning priorities 

  • Localisation system which would dynamically resize and reposition Unity UI elements based on content and language parsed from a CSV

iOS

Unity / C#

Locomotion Tutorial Design

Cinemachine Procedural Transitions

Custom Inspector Tool Creation

CSV loading and parsing

Root Motion

Bolt Visual Scripting

16 Week game development course aimed at novice-lower intermediate Unity developers. Covering commonly used Unity features, source control best practices and programming patterns

  • Developed a system to manage timelines for multiple overlapping characters and interactions, syncing voiceover, animations and effects

  • Created a subtitle system to unobtrusively follow the user's focus   

  • Added Javascript to static webpages to allow communication with Unity via Vuplex Web UI

Desktop / Android

Unity / C#

Prefab Variant Structuring

Saving, loading and serializing

Android Achievements

Root motion and blend trees

Lighting Fundamentals

Cinemachine

A multi-platform, mixed reality, meeting app where users can collaborate to examine and manipulate CAD files in real time, whilst being represented by avatars generated via a mugshot-style photo.

  • Led a small team of artists and programmers, heading scrums while breaking down and delegating tasks

  • Designed UX for HoloLens 1, 2, Desktop and iOS, ensuring a cohesive experience across platforms

  • Managed time to meet strict deadlines and satisfy client's project specification

HoloLens 1+2, iOS, Desktop

Unity / C#

Oculus Lipsync Native / C++

Microsoft MRTK

Azure Remote Rendering

UI / UX Design and Programming

Holographic Remoting

Profiling + Optimisation

IL2CPP + ARM Debugging

Mixed Reality app to provide maintenance instructions for machinery, in a similar way to Microsoft Guides. IoT-enabled devices can automatically upload their state to update a user's instructions.

  • Designed and coded IoT-enabled demo devices to demonstrate the capabilities of the platform

  • Designed UX for HoloLens 1, ensuring it was unobtrusive and informative

  • Demonstrated software to clients and potential customers at international trade shows and bespoke sales pitches

HoloLens 1+2, IoT Devices

Unity / C#

Raspbian / Linux .NET Core

Azure Spatial Anchors

HoloLens Spatial Understanding

Network Replication

Profiling + Optimisation across devices

Sci-Fi VR horde shooter and base defence, featuring achievements, aerial and grounded enemies and a variety of dual-wield weapons with unique characteristics

  • Worked alongside an artist to design and implement a hexagonal tile level editor for Scrap Attack

  • Designed weapons and iteratively balanced them following internal and external playtests

  • Collaborated with artists, programmers and another designer to refine and iterate UI elements, while balancing the game

Vive, Windows MR, Rift

Unity / C#

Unity Custom Inspectors

Level Design

Custom Inspector Tool Creation

Tutorial Design

Weapon  and Enemy Balancing

UI Design

A multi-platform, web-based game designed to sit amongst web content. Aimed to maximise brand engagement by allowing a user to play using a variety of platforms and peripherals. Created over 2 weeks by an artist and me

  • Designed, prototyped and iterated on gameplay across all platforms

  • Profiled and optimised the game, draw calls, collision, and physics to run on mobile devices
  • Implemented a simple collision detection and gravity system to workaround ammo.js + PlayCanvas performance issues

Desktop, iOS, Android, WMR, Cardboard

PlayCanvas / JavaScript

Game and UX Design

Game Balancing

WebVR Development

Mobile Input

GPU + CPU Optimisation

bottom of page