Dust
Bunnies

Game Programming Character Mechanics 3D Art Unreal Engine 5 · C++

A 3D puzzle and exploration game built around the idea of "little guy in a big world" — following an animated teddy bear helping other household objects, with mechanics built from the ground up in Blueprints and C++.

Add Alpha video here

Alpha build — hang, climb, and double jump mechanics

Little guy, big world

Dust Bunnies centres on a teddy bear navigating a room-scale environment, completing quests given by household objects. The main quest is set by the dustpan, with additional side quests from other objects throughout the world. The design challenge was making a low-stakes, easy-going game that still rewarded exploration and movement mastery.

My responsibilities — Alpha

  • Hang and climb mechanic — full ledge detection and character transition from hang to climb state, built in Blueprints
  • Double jump — input-buffered double jump with apex detection for responsive feel
  • Dust Bunny collection counter — UI widget tracking collectible count, persisting across level sections
Add Beta video here

Beta build — push mechanic, dust bunny model, Niagara particles

My responsibilities — Beta

  • Push mechanic — physics-based object pushing with weight simulation, so larger objects resist being moved
  • Dust bunny model — fully modelled, textured, rigged, and animated character asset built entirely by me
  • Niagara particle system — dust trail particle effect triggered on movement, reinforcing the game's tactile, cosy feel

What this taught me

Dust Bunnies was where I first built character mechanics from scratch end-to-end — from input handling to animation state machines to physics interaction. Working across both programming and 3D art on the same project showed me how tightly those disciplines are connected in production.

Research Question

How do movement mechanic design decisions — hang, climb, push — shape player spatial reasoning in exploration games, and how can those mechanics be tuned to match a game's tonal register?