tortuise: 3D Gaussian Splats in Your Terminal
3D graphics. In your terminal. Made of Unicode characters.
That sounds like a joke until you see it running. Tortuise renders Gaussian splats — those photorealistic 3D scenes you've seen from AI research — directly in your terminal using nothing but text characters and colors. 1.1 million splats running at 20+ FPS, no GPU required.
What Makes This Different
Most 3D viewers need a desktop environment and dedicated graphics hardware. Tortuise runs anywhere you have a terminal. SSH into a remote server, spin up a container, work over a slow connection — if you can run ls, you can view 3D scenes.
The technical approach is clever. Each terminal cell becomes two pixels using the halfblock character ▄ — foreground color for the top half, background for the bottom. The result looks surprisingly good, especially on modern terminals with truecolor support.
Built in Rust with a fully parallelized rendering pipeline, it handles scenes that would choke other viewers. The 1.1M splat bonsai scene maintains playable framerates even on modest hardware.
Hands On
Installation is straightforward if you have Rust:
cargo install tortuise
Start with the built-in demo to see if your terminal plays nice:
tortuise --demo
The controls feel like any 3D viewer — WASD to move, arrow keys to look around, M to cycle between render modes. There's a free camera mode for exploring and an orbit mode for lazy viewing.
Real scenes come from SuperSplat, a community site with thousands of Gaussian splat captures. The included download script handles the conversion:
./scripts/supersplat-dl.sh "https://superspl.at/scene/d281f99f" ramen.ply
tortuise ramen.ply
Performance scales with terminal size. Smaller window means fewer characters to render, which means higher framerates. It's an interesting constraint that actually works in your favor — you can tune performance by adjusting your window.
Six render modes give you options: halfblock (default), point cloud, ASCII density, braille patterns, block density, and matrix rain style. Each has its own aesthetic, though halfblock consistently looks the most convincing.
The Reality Check
This is a novelty that happens to be useful. You're not replacing Blender with a terminal viewer. Image quality has hard limits when you're working with text characters, and scenes with fine detail or transparency don't translate well.
The CPU-only approach is both a strength and limitation. No GPU dependency means it runs everywhere, but compute-heavy scenes will make your fans spin. The author mentions a Metal backend exists but is "parked" — probably wise given terminal rendering's resolution constraints.
Terminal compatibility varies. Truecolor terminals (Kitty, WezTerm, iTerm2) look great. Apple Terminal falls back to 256-color mapping that works but loses fidelity. If you're stuck with a basic terminal, expect muted results.
The real question: when would you actually use this? Remote 3D model inspection, quick scene previews, showing off to colleagues, educational demos. It fills a specific niche between "I need to see this 3D file" and "I don't want to install a full graphics application."
Worth Your Time?
If you work with 3D content or just appreciate technical creativity, absolutely try the demo. The "how did they make this work?" factor alone justifies the five minutes.
For practical use, it depends on your workflow. If you frequently SSH into remote machines or work in terminal-heavy environments, having a 3D viewer available anywhere could be surprisingly handy. The fact that it handles real-world scene sizes efficiently is impressive.
The project feels like the best kind of open source work — someone had a weird idea, executed it well, and shared it with proper documentation. The roadmap mentions Kitty graphics protocol support for pixel-perfect rendering, which could be a game-changer.
Go Try It
cargo install tortuise && tortuise --demo gets you started. Check your terminal — if colors look right in the demo, real scenes will work fine.
Browse SuperSplat for scenes, or try the bundled bonsai.splat if you want to stress-test your hardware. The download script makes grabbing scenes trivial.
Project: tortuise on GitHub
Installation: cargo install tortuise
Scenes: SuperSplat community
Compiled by AI. Proofread by caffeine. ☕