Jiamu Shangguan Interactive Site ›

Mathematics @ University of Waterloo · Game Developer · Composer

Jiamu
Shangguan

Second-year student in Applied Mathematics with Scientific Computing and Scientific Machine Learning. I build games in Godot and compose music as a keyboardist.

01 About

About Me

Applied mathematics, built with a creative practice alongside it.

Education

University of Waterloo — Bachelor of Mathematics (Co-op)

Sept. 2025 – Present · Waterloo, ON

Major: Applied Mathematics with Scientific Computing & Scientific Machine Learning (AM-SciML).

Beyond the desk

10+ years of classical piano and an original composer; co-founder of R&S Studio.

I apply mathematical rigor to creative work, blending harmonic theory with number-theory principles.

Fluent in Mandarin Chinese (native) and English.

02 Skills

Technical Skills

The tools I reach for across web, creative, and data work.

Frontend & Web

HTML5CSS3JavaScriptResponsive DesignUI/UXData Visualization

Languages

PythonGDScript

Tools & Platforms

Godot EngineGit / GitHubVS CodeBlenderLaTeXAPI IntegrationWeb Deployment

AI & Data

MediaPipeStreamlitOpenAI API

03 Experience

Work Experience

Where the math met the hardware.

Jul. 2024 – Aug. 2024

Calgary, AB

Technical Intern

AUAV · Drone Show Technology

PythonSkybrushBlenderTelemetry Analysis
  • Simulated drone swarm formations with Python and Skybrush, optimizing flight paths for collision avoidance and visual impact.
  • Created 3D pre-visualization assets in Blender to align technical flight constraints with artistic design.
  • Executed automated flight tests and analyzed telemetry data to improve fleet synchronization and battery efficiency.
AUAV drone show

04 Games

Game Projects

Gameplay, physics, and state machines in GDScript — with the pixel art drawn by hand.

Meme Archive 2026

Meme Archive 2026 bilibili Toy

Deduction / Spot-the-Impostor · Solo Project · Design, Code & Pixel UI

Released Oct 2026 on bilibili's in-app game platform (Chinese only): 74,000+ plays in its first ten days

You are the night-shift guard of an archive that only admits memes that really went viral — and impostors wearing their skins are sneaking in. A Papers, Please-style deduction game about the Chinese internet memes of 2026: every visitor is generated from seven randomised layers (look, paperwork, belongings, speech, mood, popularity, relations), real memes carry legitimate oddities as decoys, and the archive's one rule is that memes have no human face. Five checks per visitor on a desk of pixel-art instruments, then stamp: archive or seal. Built in Godot; the meme images belong to their original creators.

Linger

Linger 1st Place

UW Fall 2026 Game Jam · Point-and-Click Horror Puzzle · Design, Programming & VFX

Among 55 entries: #1 in Style & Presentation · #2 in Gameplay

Sylvia buys an old wooden house at the end of a quiet valley — and every night, something in it is wrong. Built in 72 hours for the UW Fall 2026 Game Jam (theme: Drift): each evening you get three minutes before midnight to find what changed and do what the last owner's book says before the lights go out. Seven days, five endings. I did the game design, the programming, lighting and particle effects, and much of the background pixel art.

Until Someone Passes

Until Someone Passes GMTK 2026

Narrative / Art Game · Team Lead · Design & All Programming

Among ~10,500 entries · 37,000+ jammers: #53 worldwide in Audio · #126 Narrative · #140 Artwork

Five days until the party. A short game about social anxiety, built in 4 days for GMTK Game Jam 2026 (theme: Count Down). Three ways to play — walking, defending, dodging — and when something gets past you, you hear yourself say something unkind. I led the three-person team, designed the game, and wrote all the code.

Phage

Phage In Development

Action-Adventure · 2D pixel side-scroller

My main project: a hand-drawn pixel action-adventure taken to an extreme — the hero is just 8×4 pixels, yet every frame is drawn by hand. The dev-log series on bilibili has 803K+ total views and ~112K likes.

Eight For Long

Eight For Long GMTK 2026

Puzzle / Strategy · Team Lead · Design & All Programming

Among ~10,500 entries · 37,000+ jammers: #476 worldwide in Narrative · #1,849 Artwork · #3,354 Audio

Eight minutes to escape an underwater facility. Every action spends the countdown, so the real puzzle is deciding who you help — you can never help everyone. My second entry to the same jam: again team lead, design, and all the code.

Signal Split

Signal Split

UW Game Jam · Team Lead & Sole Programmer

A polished 2D platformer shipped in 72 hours — 4th overall with the top score in Visuals. Wrote 100% of the GDScript (physics, state machines, level design) and made all the art.

bilibili followers21,000 / 100,000

05 Projects

Projects

ML research, hackathons, civic tech, and web builds.

01

Little Oscar In Progress

Pixel-Art Style Model · Solo · Data Pipeline, Diffusion Models & Tooling

Teaching a machine the pixel-art style of Oscar Li, the artist on my games — with his consent, for the team's own use. Stage 0 exports and de-duplicates a few thousand frames from Aseprite and game files, measures the style numerically (palette size and hue families, outline darkness, light direction, animation timing) and compiles the results into a drawing library, a style checker and a Claude skill that already draws rooms, props and creatures in his style. On top of that I train small conditional U-Nets on an Apple M-series GPU — flow matching snapped to the palette versus masked discrete diffusion over palette tokens — and score them against the originals, including a copy-check against memorisation. Consent is enforced in code: the dataset builder refuses any artist not flagged as having agreed.

Little Oscar
02

WaveLens Hack the North 2026

Desk Objects → Music · Team of 3 · Main Program, Music Engine, Vision & Demo

Point a camera at your desk, take a photo, and every object becomes a member of a band that never plays out of tune: a cup is a grand piano, a pen a fingerpicked guitar, a bottle a pizzicato bass, a book a quiet drum machine, and an open mouth the baritone-sax lead. YOLO-World recognises objects from text prompts (so pens and glasses work without training), MediaPipe reads faces, and a sample-based audio engine on sounddevice plays Logic Pro instruments over a four-chord loop, with a "math mode" that composes the melodic parts bar by bar. A UDP remote port lets a Zybo Z7-20 FPGA conduct the beat and sequencer. I wrote the main program, the music engine, the recognition and the demo; teammates built the FPGA conductor and the ElevenLabs / Gemini integrations.

WaveLens
03

Loo-k

Cost-of-Living Comparison Tool · Team Lead

Led a team of four building a neighborhood-livability aggregator comparing cost-of-living and housing metrics across Canadian cities. Presented at Hack Canada 2026; migrating from web to mobile.

Loo-k
04

Physics Simulation 1st Place

Claude Create-A-Thon · Data Viz Track

1st place among 30 teams — interactive simulations of Hooke's Law and pendulum energy conversion with real-time visualization.

Physics Simulation
05

Sentiment Flow

uOttaHack 8 · Developer

Real-time facial-signal monitoring with MediaPipe and a Streamlit dashboard; integrated the OpenAI API for automated insights and SurveyMonkey for survey distribution.

Sentiment Flow
06

Open Prince George

Civic Tech Developer

An open-source city-council tracker aggregating public-hearing schedules and decisions, with an AI-assisted pipeline that classifies and summarizes agenda items.

Open Prince George
07

DonaTrust Portal

Humanitarian Tech · Frontend

A frontend prototype for a charity-transparency platform, with a clean interface presenting project goals and features.

DonaTrust

06 Music

Music Composing

10+ years of classical piano, and original work released through R&S Studio.

Co-founder

Music production · Original compositions

R&S Studio

A music-production project showcasing original works. The full catalogue of tracks and releases lives on the studio site.

Visit R&S Studio 
R&S Studio

07 Contact

Contact

Open to co-op roles, collaborations, and game-jam teams.