Benjamin Drury

Gameplay, Systems & Tools Programmer, Generalist

Unity | UE4 | VR

Runaway Mage (unreleased)

Single-player VR gardening experience to help with anxiety and mental illness

UE4 Quest VR

Lead Programmer Contractor

  • Companion AI, Gardening Mechanics

  • Platform optimisation

  • Generalist

A problem-solving puzzle game where you create sequenced paths to guide data-carrying robots.

Unity PC

Solo Project

  • Programming

  • Game Design

  • Art

An interactive VR walk-through platform for architectural firms and clients.

UE4 Quest VR

Lead Programmer/Developer

  • Gameplay, Tools, and UI programming

  • Platform optimisation

  • Technical documentation

An educational app for hands on teaching of accredited first-aid in VR.

Unity Tethered-VR


  • Gameplay, Tools, and UI programming

  • Performance optimisation

  • Technical documentation

Conway's Game of Life

Implementation Time: 6 Hours

  • Cellular Automata with hot swappable rule-set.

  • CA uses a custom Double Buffer array, with inbuilt wrap functionality.

  • Colour derived from heat map values passed to a coloured gradient.

  • Colour gradient is hot swappable.

  • Drawn to a Unity Render Texture

Twin Stick Shooter

Implementation Time: 8 Hours

  • Dynamic input using only 4 buttons (2 per hand) that allows for:

    • Shooting, open/close gun for reloading, load ammo, holster, draw, pickup, put down, and world interact.

  • Hands function independently for duel wielding fun.

  • Segmented body + procedural orientation for dynamic animation.

Slime Mould Simulation

Implementation Time: 16 Hours

  • Simulates the Transport Network of the Physarum Polycephalum Slime Mold,

  • Particles leave trails on trail map.

  • Particles change direction based on trail density.

  • Trail deteriorates resulting in orderly networks.

  • Base on Sage Jenson's implementation.

Times Table Visualisation

Implementation Time: 14 Hours

  • Inspired by Mathologer's explanation of Times Tables

  • Effect is produced by distributing a number of points evenly around a circle.

  • Each point is numbered starting with 0. Then for each point you multiply that point's index number by a factor F and use the Modulo operation to wrap the result.

  • Drawing a line from each point X to the result of X*F. You do this for each point around the circle.

  • Procedural meshes drawn straight to Unity graphics for performance.