Spaghetti Splatting

Differentiating Curvilinear Dirac Masses via Convolution

George Shramko1 Shrisudhan Govindarajan1,2 Rudy Lam1 Yizheng Xie1 Daniel Rebain2,3 David B. Lindell4 Andrea Tagliasacchi1,2,4

1Simon Fraser University 2Wayve Labs 3University of British Columbia 4University of Toronto

Abstract

In production systems, 3D geometry is represented by primitives such as points, lines, and triangles, as rendering hardware is optimized to generate images from them very efficiently. Learning such primitives from images by volume rendering is challenging, as they are Dirac masses defined at infinitesimal locations in space. EWA splatting, Poisson reconstruction, and 3D Gaussian Splatting overcome this by convolving Dirac masses with a low-frequency kernel, a recipe that generalizes along two axes: the kernel and the primitive. As points and triangles have already received significant attention, we investigate this recipe for curvilinear primitives, and introduce Spaghetti Splatting. We approximate curves by polylines whose convolution converges to that of the convolution of the continuous curve, and volume render each segment so that connected segments composite without overcounting at their joints. For fast training and inference, we linearize the camera projection per segment, which accommodates kernels beside Gaussians, such as Beta kernels. As a point is a curve of zero length, our representation is a strict superset of 3D Gaussian Splatting. Hence, it remains competitive with the state-of-the-art on general scenes, outperforms methods specialized to line-like geometry, natively supports anti-aliasing, and produces long connected strands that are directly amenable to physics simulation.

Spaghetti Splatting recovers thin structures, such as the wires of a drain grate and the mesh of an onion net, as connected segments that follow them. 3DGS-MCMC + SV8 represents the same structures with scattered points. Because the segments stay connected, the reconstruction remains consistent when we render it from novel views.

Method

Spaghetti Splatting extends the primitive of 3D Gaussian Splatting from points to curves. EWA splatting, Poisson reconstruction, and 3D Gaussian Splatting all convolve Dirac masses with a low-frequency kernel. This recipe generalizes along two axes: the kernel and the primitive. As prior work studies points and triangles, we convolve curvilinear Dirac masses. We approximate each curve by a polyline. Its convolution with a kernel converges to that of the continuous curve as the segments shrink. As a point is a curve of zero length, our representation is a strict superset of 3D Gaussian Splatting.

Kernel and Dirac mass

A 3D Gaussian is the convolution of a Dirac mass at a point with a Gaussian kernel. We replace the point with a segment of learnable length and convolve the measure of the segment with the same kernel. The same construction holds for other kernels, such as the Beta kernels of Deformable Beta Splatting.

Point to curve, Gaussian kernel
Point to curve, Beta kernel
Anisotropic Beta kernel
Per-segment rasterizer
Closed-form convolution
Perspective projection
Front-to-back compositing
One EWA per segment, scaled by inverse depth

The optical depth of a Gaussian-convolved segment along a camera ray has a closed form in the error function. The closed form needs ray-dependent quantities for every pair of segment and pixel, which is too slow for training. For fast training and inference, we linearize the perspective projection once per frame at the midpoint of each segment, as in EWA splatting. We then scale the projected kernel along the segment with inverse depth, so the projected kernel shrinks with depth along the segment. This linearization also supports Beta kernels.

Exact subdivision

Each segment has an optical depth τ along a ray and the opacity α = 1 − e−τ. We composite the segments front to back. As the convolution and the optical depth are linear, splitting a segment into two halves that inherit its density per unit length splits its optical depth into two terms that sum to the original. Alpha blending of the two halves then gives (1 − α1)(1 − α2) = e−τ1−τ2 = 1 − α, the same transmittance as the parent. Splitting a long segment during optimization thus keeps its density field and its opacity along every ray, so the rendered image does not change.

Covariance alignment

The local x axis of each kernel is the direction of its segment. When a polyline deforms, for example in a physics simulation, each kernel thus stays aligned with its segment.

Many shapes from polylines

Here are some more examples of primitives achievable with our representation.

Fuzzy

Our reconstructions of scenes on the Fuzzy dataset.

Shelly

Our reconstructions of scenes on the Shelly dataset.

Hair: comparison with Gaussian Haircut

Our reconstructions on GeomHair and Yuksel Curly scenes.

Mip-NeRF 360

Our reconstructions of scenes on the Mip-NeRF 360 dataset.

BibTeX

@article{shramko2026spaghetti,
  title={Spaghetti Splatting: Differentiating Curvilinear Dirac Masses via Convolution},
  author={Shramko, George and Govindarajan, Shrisudhan and Lam, Rudy and Xie, Yizheng and Rebain, Daniel and Lindell, David B. and Tagliasacchi, Andrea},
  journal={arXiv preprint arXiv:2611.12716},
  year={2026}
}