Mehran A's Work | ContraWork by Mehran AMehran A
Mobile App Developer | SwiftUI | Flutter | Rive
Wanted the controls screen to feel more like flipping through a deck of retro cards than navigating another settings menu
Those little ships aren't videos. They're rendered live in 3D, and you can actually test your controls right on the cards before jumping into the game
All built in @Rive with GPU Canvas, Luau scripting, and the Rive CLI ๐ Dead Orbit | A 3D Space Shooter Built Entirely in Rive
10 haunted worlds. 10 guardians. 12 customizable warships. And a whole lot of things trying to kill you. ๐
Dead Orbit started as a Halloween experiment and turned into a full 3D space shooter, built entirely in Rive.
Explore the Halloween Veil, choose your destination, and fight through enemy waves before facing each world's guardian. From giant haunted carriers to ghostly creatures, skull-covered planets, and cursed candy. Yes, even the candy shoots back.
Back in the hangar, you can customize 12 ships across four tiers, with 27 possible builds per ship, different weapons, and special abilities.
technical side:
Rive CLI: AI-assisted development using RML scenes
GPU Canvas: 3D ships, worlds, holograms, lighting, and custom WGSL shaders
Luau scripting: Combat, enemy behavior, weapons, and gameplay systems
State machines and data binding: Animations, interactions, HUDs, and game state
Responsive layouts: Built for different screens and orientations
The menu, star map, hangar, hyperspace jumps, and combat all run inside a single .riv file, without a separate game engine.
Tested at up to 120 FPS on a 120 Hz display.
It's been a wild ride getting all of this together for the Rive ร Contra Halloween Challenge!
๐ Sound on one last jump before submission ๐
Been working on the launch sequence for Dead Orbit, taking the ship from the hangar into hyperspace.
A few final touches left before the Rive ร Contra Halloween challenge deadline! plotting a course to the Halloween Veil ๐
A look at Dead Orbit's STAR MAP, taking you from the main menu into a 3D planetary system with 10 worlds, custom shaders, and interactive planet selection
The loading sequence uses data binding and state machines to track progress and handle the transition into the map
Built with Rive CLI, GPU Canvas, Luau scripting, and WGSL shaders
๐ Sound on