# How Splatting Works

## Introduction

This page covers the representation underneath the method: what a Gaussian carries, how training fits thousands of them to a set of images, and why the result is a radiance field rather than a surface.

### Gaussian Representation
- Position (mean), covariance (shape), opacity, color (spherical harmonics)
- What makes a Gaussian "anisotropic"
- How parameters are stored and optimized

### The Optimization Process
- Starting from a sparse point cloud (COLMAP output)
- Gradient descent on Gaussian parameters
- Adaptive density control: splitting, cloning, pruning
- Loss functions: L1 + D-SSIM

### Rendering
- Tile-based rasterization (not ray marching)
- Alpha blending — splatting Gaussians onto the image plane
- Why it's fast: no per-pixel ray queries

### 3DGS vs. NeRF
- NeRF: implicit, continuous, slow to render
- 3DGS: explicit, discrete, real-time rendering
- Trade-offs in quality, speed, and controllability

## Summary

A splat model is a set of oriented gaussians, not a mesh. That one difference drives everything: what the model renders well, what it distorts, and what it can never promise. You now know what a Gaussian carries, how training fits them to images, and why the result renders fast and edits poorly.

<div className="closing-grid">

<div>

#### Resources

### KB Pages
- [Gaussian Splatting technique page](../../../techniques/3-acquisition-generation/gaussian-splatting.md)

### External
- [3D Gaussian Splatting paper](https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/) — Section 3: Overview
- [Gaussian Splatting explained (YouTube)](https://www.youtube.com/watch?v=QW8ec3qquHA) — Technical walkthrough
- [Course Syllabus](../syllabus.md) — full course overview and module map

</div>

<div>

#### Sources

<!-- 1. [Title — link](https://…) — one-line note <span id="ref-N" /> -->

</div>

</div>
