MetalSplat v0.3.0 Trains 3DGS and 2DGS on Apple Silicon

MetalSplat v0.3.0 trains 3D and 2D Gaussian splatting on Apple Silicon through PyTorch and hand-written Metal kernels, and aligns training with reference code.

MetalSplat v0.3.0 trains 3D and 2D Gaussian splatting on Apple Silicon through PyTorch and hand-written Metal kernels, and aligns training with reference code.

Michael Rubloff

Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

Miris

Thibaut Chauffier has released MetalSplat v0.3.0, an MIT licensed differentiable rasterizer for training Gaussian splats on Apple Silicon.

MetalSplat follows the architecture of gsplat, which the nerfstudio team introduced in 2023, with hand written Metal compute kernels standing in for its CUDA kernels on the PyTorch MPS backend. The kernels are Metal Shading Language source compiled at runtime through torch.mps.compile_shader, so there is no Xcode toolchain or native build step. On the Mac, OpenSplat added MPS acceleration to its trainer in 2024. MetalSplat stays inside Python, exposing GaussianModel, Camera, and render as a differentiable API, and every Metal stage has a pure PyTorch twin that the tests use as the gradient oracle.

The 3DGS pipeline supports spherical harmonics up to degree 3, the Mip-Splatting 3D filter, AbsGS style densification, SparseAdam, COLMAP loading through pycolmap, and standard PLY import and export. Version 0.2.0 added a parallel 2DGS pipeline, Gaussian2DModel and render_2dgs, which intersects each pixel's ray with the flat splat exactly and outputs differentiable depth and normals, trained with depth distortion and normal consistency regularizers.

MetalSplat v0.3.0 consists of a single merged pull request that fixes bugs Chauffier found in two reviews of the codebase and aligns training with the reference 3DGS, Mip-Splatting, and 2DGS implementations. Opacity resets had kept stale Adam moments, which let densification cull about 76% of a 2DGS model, and the 3D filter was about 2.2x too narrow. On the garden scene at 4,000 steps, held out PSNR for 2DGS rose from 22.79 to 24.06 dB, a gain Chauffier says is mostly recovery from the opacity reset collapse. The 3DGS figure rose to 24.05 dB from a 21.84 dB baseline that Chauffier calls approximate because it comes from an older log. 2DGS rendering dropped from 14.1 to 6.9 ms per view, and the test suite grew from 251 to 321 tests.

Only undistorted PINHOLE and SIMPLE_PINHOLE cameras are supported, and the 2DGS pipeline does not yet extract meshes. MetalSplat is a separate project from MetalSplatter, Sean Cier's Swift and Metal splat renderer for iOS, macOS and visionOS.

It is available now on GitHub.

Featured

Recents

Platforms

TACTYC Gaussian Splat v2.0 Renders and Relights Gaussian Splats in Cinema 4D With Redshift

TACTYC Gaussian Splat v2.0 renders and relights Gaussian splats in Cinema 4D with Redshift, building one textured card per splat with SH view-dependent color.

Michael Rubloff

Oct 10, 2026

Platforms

TACTYC Gaussian Splat v2.0 Renders and Relights Gaussian Splats in Cinema 4D With Redshift

TACTYC Gaussian Splat v2.0 renders and relights Gaussian splats in Cinema 4D with Redshift, building one textured card per splat with SH view-dependent color.

Michael Rubloff

Platforms

WebODM 3.3.0 Brings Gaussian Splatting to Open-Source Drone Mapping

WebODM 3.3.0 adds Gaussian splatting support, exporting COLMAP training sets for OpenSplat or Brush and tiling uploaded splats into Spark's RAD format.

Michael Rubloff

Oct 9, 2026

Platforms

WebODM 3.3.0 Brings Gaussian Splatting to Open-Source Drone Mapping

WebODM 3.3.0 adds Gaussian splatting support, exporting COLMAP training sets for OpenSplat or Brush and tiling uploaded splats into Spark's RAD format.

Michael Rubloff

Platforms

WallGS Pro Brings Gaussian Splat Relighting to Unreal Engine 5

WallGS Pro adds Gaussian splat relighting to Unreal Engine 5, along with Lumen screen-traced reflections, runtime import and culling volumes for 3DGS and 4DGS.

Michael Rubloff

Oct 9, 2026

Platforms

WallGS Pro Brings Gaussian Splat Relighting to Unreal Engine 5

WallGS Pro adds Gaussian splat relighting to Unreal Engine 5, along with Lumen screen-traced reflections, runtime import and culling volumes for 3DGS and 4DGS.

Michael Rubloff

Platforms

LichtFeld Studio 0.5.4 Adds a .licht Project Format, Normal-Guided Training, and Gallery Publishing

LichtFeld Studio 0.5.4 adds a .licht project format, normal-guided training, lower training VRAM, and direct publishing to the Gallery from inside the app.

Michael Rubloff

Oct 8, 2026

Platforms

LichtFeld Studio 0.5.4 Adds a .licht Project Format, Normal-Guided Training, and Gallery Publishing

LichtFeld Studio 0.5.4 adds a .licht project format, normal-guided training, lower training VRAM, and direct publishing to the Gallery from inside the app.

Michael Rubloff

Michael Rubloff

Written by Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

More from Michael Rubloff

More from Michael Rubloff

Platforms

TACTYC Gaussian Splat v2.0 Renders and Relights Gaussian Splats in Cinema 4D With Redshift

TACTYC Gaussian Splat v2.0 renders and relights Gaussian splats in Cinema 4D with Redshift, building one textured card per splat with SH view-dependent color.

Michael Rubloff

Oct 10, 2026

TACTYC Gaussian Splat

Platforms

TACTYC Gaussian Splat v2.0 Renders and Relights Gaussian Splats in Cinema 4D With Redshift

Michael Rubloff

Oct 10, 2026

TACTYC Gaussian Splat

Platforms

TACTYC Gaussian Splat v2.0 Renders and Relights Gaussian Splats in Cinema 4D With Redshift

TACTYC Gaussian Splat v2.0 renders and relights Gaussian splats in Cinema 4D with Redshift, building one textured card per splat with SH view-dependent color.

Michael Rubloff

Oct 10, 2026

TACTYC Gaussian Splat

Platforms

WebODM 3.3.0 Brings Gaussian Splatting to Open-Source Drone Mapping

WebODM 3.3.0 adds Gaussian splatting support, exporting COLMAP training sets for OpenSplat or Brush and tiling uploaded splats into Spark's RAD format.

Michael Rubloff

Oct 9, 2026

WebODM

Platforms

WebODM 3.3.0 Brings Gaussian Splatting to Open-Source Drone Mapping

Michael Rubloff

Oct 9, 2026

WebODM

Platforms

WebODM 3.3.0 Brings Gaussian Splatting to Open-Source Drone Mapping

WebODM 3.3.0 adds Gaussian splatting support, exporting COLMAP training sets for OpenSplat or Brush and tiling uploaded splats into Spark's RAD format.

Michael Rubloff

Oct 9, 2026

WebODM

Platforms

WallGS Pro Brings Gaussian Splat Relighting to Unreal Engine 5

WallGS Pro adds Gaussian splat relighting to Unreal Engine 5, along with Lumen screen-traced reflections, runtime import and culling volumes for 3DGS and 4DGS.

Michael Rubloff

Oct 9, 2026

WallGS Pro

Platforms

WallGS Pro Brings Gaussian Splat Relighting to Unreal Engine 5

Michael Rubloff

Oct 9, 2026

WallGS Pro

Platforms

WallGS Pro Brings Gaussian Splat Relighting to Unreal Engine 5

WallGS Pro adds Gaussian splat relighting to Unreal Engine 5, along with Lumen screen-traced reflections, runtime import and culling volumes for 3DGS and 4DGS.

Michael Rubloff

Oct 9, 2026

WallGS Pro

New to Gaussian Splatting? Start here

Radiance fields, explained from the ground up: what a Gaussian splat is, how to capture one, and which tools and gear to start with.

Newsletter

Keep up with the field.

New research, tools and captures from the Radiance Fields newsroom, in your inbox. Free, no spam.