$ render --mode=ascii --shape=torus

ASCII DONUT

A real-time 3D torus drawn entirely from characters. Move your cursor across it to steer the rotation. Let go and it keeps spinning.

GLYPHS.,-~:;=!*#$@FRAMERATE60 fpsINPUTpointer + touch
view the gallery
[03]

how the donut is drawn

No WebGL, no mesh, no textures. Trigonometry and a z-buffer, printed as monospace text.

projection
Each point on the torus is rotated in 3D, divided by depth, and mapped to a character cell.
lighting
A surface-normal dot light picks a glyph from .,-~:;=!*#$@ - brighter normals get denser ink.
color
Depth shifts the hue from neon green (near) to neon pink (far), so the tube reads as a glowing ring.
control
Pointer position sets a target tilt; the pose eases toward it, then idles back into an auto-spin.
/dev/ascii

visitor@ascii:~$ echo "