explaingit

graphdeco-inria/gaussian-splatting

21,673PythonAudience · developerComplexity · 4/5QuietSetup · hard

TLDR

Real-time photorealistic 3D scene reconstruction from photos using millions of optimized 3D Gaussian blobs, achieving high-quality rendering at 30+ fps.

Mindmap

mindmap
  root((repo))
    What it does
      Photo to 3D scene
      Real-time rendering
      High visual quality
    How it works
      Gaussian blobs
      Position optimization
      Custom renderer
    Use cases
      Game assets
      Visual effects
      Virtual tours
      VR experiences
    Tech stack
      Python PyTorch
      CUDA GPU
      Custom extensions
    Requirements
      NVIDIA GPU
      Multi-angle photos
      Camera calibration

Things people build with this

USE CASE 1

Convert multi-angle photos into interactive 3D game assets or visual effects for films.

USE CASE 2

Create photorealistic virtual tours of real-world locations that viewers can explore in real time.

USE CASE 3

Build VR experiences with high-quality 3D environments reconstructed from photographs.

USE CASE 4

Generate training data for 3D computer vision models by capturing scenes from many camera angles.

Tech stack

PythonPyTorchCUDAC++

Getting it running

Difficulty · hard Time to first run · 1day+

Requires CUDA GPU, PyTorch compilation, C++ build system, and large training datasets; multiple dependencies must align.

License could not be detected automatically. Check the repository's LICENSE file before use.

In plain English

This is the official reference implementation from the paper "3D Gaussian Splatting for Real-Time Radiance Field Rendering," by researchers at Inria, the University of Côte d'Azur, and the Max Planck Institute, published in ACM Transactions on Graphics in 2023. In plain terms, it tackles a problem in computer graphics: given a set of ordinary photos or video frames of a scene from different angles, can a computer figure out the scene's 3D shape and render brand-new views, sweeping the camera through a room you only photographed from a few spots, at real-time frame rates and high resolution? Earlier radiance field methods such as neural-network-based approaches could produce beautiful results but were slow to train and render. This work represents the scene as millions of small fuzzy 3D blobs called Gaussians, each with position, shape, colour and transparency, starting from the sparse point cloud you get from a camera-calibration step. It then iteratively optimises and adds or removes Gaussians so that, when projected onto each input image, they reproduce what was photographed. A custom rendering algorithm splats these Gaussians onto the screen fast enough to display at 1080p and at least 30 frames per second. You would use this as a graphics or vision researcher exploring novel-view synthesis, or as a developer building tools for VR, virtual production, or photogrammetry visualisation. The optimiser is written in Python with PyTorch and CUDA extensions; a real-time viewer is provided in OpenGL, with later updates adding OpenXR support for VR. A CUDA-ready GPU with 24 GB VRAM is recommended for paper-quality training. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
How do I prepare my own photos to train a Gaussian Splatting model using this repository?
Prompt 2
Show me how to use the real-time viewer to explore a trained Gaussian Splatting scene on my GPU.
Prompt 3
What GPU specifications do I need to run Gaussian Splatting training and rendering at 1080p resolution?
Prompt 4
How can I export a trained Gaussian Splatting model for use in a game engine or VR application?
Prompt 5
Walk me through the training process: how does the optimizer adjust the Gaussians to match my input photos?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.