FakinIt
A visual experiment in faking 3D with 2D—a dancing stick figure rendered with perspective projection, beat-synced choreography, and CRT shader effects.
Video
Screenshots
About
FakinIt explores how far you can push 2D graphics to simulate 3D depth. Using perspective projection matrices and rotation transforms, a stick figure appears to exist in three-dimensional space—rotating, dancing, and moving with convincing depth—all rendered with LÖVE 2D’s basic drawing primitives.
The visual style is deliberately sketchy: each bone is drawn as multiple offset lines, joints are rendered as asterisks, and the whole scene runs through a CRT shader with scanlines and chromatic aberration.
Features
- Perspective projection: Y-axis rotation with focal-length-based depth scaling
- Beat synchronization: Tap tempo and BPM tracking drive the choreography
- Motion effects: Velocity-based particles, position trails, and motion blur ghosts
- Dynamic camera: 11 preset shots plus procedural moves (orbit, jib sweep, push-in)
- CRT shader: Barrel distortion, scanlines, vignette, and phosphor glow
Animation System
The stick figure uses a 17-joint skeleton with data-driven animations. Movement is built from sine-wave harmonics, creating smooth organic motion that can lock to any BPM. Included animations: idle breathing, walk, run, dance, and the Carlton.
Technical Details
- Language: Lua
- Framework: LÖVE 2D 11.4
- Rendering: Procedural sketch-style lines with randomized variation
- Effects: Particle systems, trails, motion blur, beat-reactive visuals
- Audio: BPM detection with tap tempo and measure-phase choreography