Cover image for SplatForge

SplatForge

2026

3D Tools
AI Tools
Drone Video
Image Processing
Procedural Generation
WebGL
View Live Demo
About the Project

What it is. SplatForge turns a handful of 360° drone photos into a real, geo-registered 3D scene you can fly through, share, or drop into a flight sim or game engine. The tagline says it plainly — "Fly the drone. Get the scene." — and the whole thing runs self-hosted on your own hardware. The site even ships a live demo: a real SplatForge export, a legacy 40-panorama drone capture with 5M+ Gaussians in a ~300 MB scene.ply, rendered right in the browser over WebGL2 with drag-to-rotate, scroll-to-zoom, and right-drag-to-pan.

What it does. I built a five-stage pipeline. It reads EXIF GPS out of each equirectangular JPEG, slices every panorama into 18 perspective tangent views with known intrinsics, feeds those plus the GPS priors into COLMAP for a geo-registered sparse reconstruction, trains the Gaussian splat with gsplat, then exports. The exporters are the payoff: .ply for SuperSplat and Blender, .glb for three.js, and .obj/.fbx + .tga for RealFlight Evolution's 3D Scenery Importer — so a field I flew this morning becomes a sim scene tonight. The GPS priors do the hard part too: the reconstruction lands at real-world scale and orientation instead of some arbitrary frame.

Why it works this way. Traditional photogrammetry wants hundreds of overlapping flat photos. A drone with a 360 camera gives me a few panoramas and a GPS track instead — a far cheaper capture that still reconstructs cleanly once the panos are unwrapped into tangent views.

The interesting engineering. It's a Python CLI (panosplat run, or stage by stage) over COLMAP/GLOMAP, gsplat, PyTorch, and Blender, but the delivery is what I like most: a self-contained Windows app with no host Python, no system COLMAP, no Docker. Three bundlers vendor a portable Python 3.11, CUDA COLMAP 3.13 + GLOMAP 1.2 binaries, and Blender 4.5 LTS into the installer, wrapped in an Electrobun launcher with a self-updater. Install it on more than one machine and the copies find each other on the LAN and split the training across their GPUs — no cloud service, no shared pool, nothing leaving the network. It also runs headless on RunPod when I'd rather rent GPUs.

Stack: Python, COLMAP/GLOMAP, gsplat, PyTorch, Blender, OpenCV, Electrobun, WebGL2 viewer, Next.js marketing site, Docker.

Links: splatforge.doubtech.ai — built May 2026.

Image Gallery

SplatForge gallery image 1
SplatForge gallery image 2