Hand-Drawn Ghost Survival Game Built with Rive and GPU CanvasHand-Drawn Ghost Survival Game Built with Rive and GPU Canvas
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
Boo's Vigil 👻
A small ghost keeping watch over the last light in a graveyard. Shades come out of the fog toward a rotting jack-o'-lantern, and the only defense is a small wisp of fire. Hold its light on them until they burn, collect what they drop to keep the flame alive, and survive as many waves as you can. When the flame goes out, the game ends with a jump scare.
Best with sound on.
Process
I wanted the whole game to have a hand-drawn, retro feel with a slightly dark and quirky atmosphere, so I developed the visual direction around a retro-inspired style: sepia tones, pencil textures, paper grain and the flame as the main warm element against the darkness.
I illustrated the main characters and developed the visual language for the game around them. For Boo, I created a full character sheet with front, side and back views, plus four different expressions. I also designed the Wraith, the larger enemy that appears from wave 3 and in the final scare, along with the visual treatment of the environment and props to make everything feel like it belongs to the same world.
In Rive, each of Boo's expressions is a state in his state machine, so his face reacts to what is happening in the game. He also switches to his side view when moving quickly and turns his back when the light goes out. Both characters are set on image meshes so the cloth, hair and tails move.
The game is written in RML and Luau with the Rive CLI. A WGSL shader on GPU Canvas renders the darkness, the fog and all the light sources. Every enemy is a live artboard instance with its own state machine, and data binding connects the flame, the HUD and Boo's reactions.
The props, music and sound effects started from AI-generated bases, which I adapted to match the drawings so the sepia palette, pencil texture and paper grain stay consistent throughout the game.
Features used: Rive CLI and GPU Canvas.
Aditi's avatar
That was so fun! Loved it.
Post image
Back to feed
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started