Portfolio
Hey there, I'm Cliff, a programmer based in Toronto. Below is a quick summary of things I've worked on. Click on images to enlarge them.
Professional Work
AR Mobile Game
Space Invaders: Hidden Heroes
Hidden Heroes is an AR mobile game where players use their phone to find creatures hidden within everyday objects and use them in battle.
I worked on many of the UI screens and widgets for this project, turning mockups into real, functional UI and writing performant code that often dealt with asynchronous behavior and animations. This also included updating and maintaining the Playfab (TS) backend API accordingly, as well as updates to related internal tools (in Unity).
Real-Time Strategy Mobile Game
Versus: Unfriendly Frenzy
Versus is a "fast-paced take on real-time strategy, with outlandish units to command, wacky maps to explore and exciting challenges to overcome!"
I spearheaded the last months of programming and development work for Versus before its release, implementing the final features, fixing all the remaining bugs, and even contributed some level/unit design changes to make the game more interesting.
VR Experience
Unceded Territories
Unceded Territories is a "provocative VR experience created from indigenous artist Lawrence Paul Yuxweluptun's iconic work," launched at Tribeca Film Festival.
I created several interactive pieces for this project in Unity: a chandelier that magically spins when you touch it, a fire storm that engulfs the player, and other scripted events and particle effects.
Personal & Academic Projects
Reinforcement Learning AI Unity Tools
RealmAI
RealmAI is a prototype suite of tools that leverages Reinforcement Learning (RL) to generate game analytics, helping game designers understand and balance their games. This was my undergrad Capstone Design project.
I led the design and development of the Unity part of the suite, which involves creating a wrapper around Unity's existing RL libraries, conducting experiments and investigations to make it as effective as possible yet easy to use, and working closely with the other team members to ensure a seamless integration with the Python tools in the suite. I also made a 2D shooter game to help test and showcase the tool.
2D Action Arcade Game
Goostory
Goostory is a 2D action game about fighting a horde of angry geese, featuring unique, action-packed challenges across 5 different stages.
I planned, designed, developed, and did almost everything (except for the art) over 6 months. Main technical features include object management and pooling systems for all entities and special effects, Subclass Sandbox architecture for fast level design and enemy AI iteration, and synchronization systems for networked multiplayer.
Music-Guessing Browser Game
Malheardle
Malheardle is a spinoff of the popular browser game "Heardle." Players have 6 tries to guess an opening or ending theme song from an anime show they've seen, driven by their MyAnimeList data.
I prototyped this idea quickly and then iterated on it over the next month. The game acquires user and anime data through the MyAnimeList and Jikan APIs, and uses existing NPM packages for text processing and Youtube integration.
Roguelike Game with Procedural Generation
WIP Project
This is one of the games I'm currently working on, which takes place within an expansive, procedurally generated city.
I implemented the procedural generation algorithm used to generate the city and also developed performance optimizations for thousands of buildings in a scene using knowledge of rendering and shaders.
Next.js Personal Website
This Website
I designed and built this website with Next.js.