← Research Timeline Aditya Jain / Apple Maps · 3D Reconstruction
Jan 2026
Topic 30 Jan 2026 Triplane · NeRF · Rendering Mechanics

Triplane —
3 Planes, 1 MLP, 10–100× NeRF Speed.

Mechanics deep-dive — how triplane representations work end-to-end: ray-casting from camera, bilinear lookup on 3 axis-aligned feature planes, small MLP decoder, volume rendering. The performance story: 10–100× faster than vanilla NeRF, 6–12 MB memory for 256² × 32-ch triplanes, single-forward-pass encoding at 20–40 ms on a consumer GPU. The conceptual story: when you render a triplane scene, you are not rendering a mesh — you are volume- rendering directly from the triplane feature lookup. Mesh extraction is a separate downstream step.

00 — Motivation

Pick a 3-D representation for the thesis-line generator.

By January 2026 the thesis line had three competing 3-D representations on the table: SDF + marching cubes (Hexplane AE, Six-Plane Mesh, traditional), Gaussian splats (Splatter Image, GS-LRM, fast rendering but procedural-pipeline unfriendly), and triplanes (EG3D, InstantMesh, TRELLIS- style). The triplane deep-dive was the pick-the-default exercise: how does triplane rendering actually work, what is the memory and speed profile, and does it compose with the procedural-pipeline constraints the thesis line has.

The deep-dive output was the decision to use triplane (and its hexplane / six-plane generalisations) as the universal intermediate representation for the thesis line. The Hierarchical Triplane work (Topic 33), the Hexplane AE work (Topic 29), and the SculptNet primitive output all consume a triplane-family representation downstream. The triplane is the spine that connects the topics.

01 — Mechanics

3 planes → bilinear lookup → MLP → volume render.

For each pixel in the camera view: 1. Cast a ray from camera origin through pixel 2. Sample N points along the ray 3. For each 3-D sample point (x, y, z): project onto XY plane → bilinear-sample feature F_xy project onto XZ plane → bilinear-sample feature F_xz project onto YZ plane → bilinear-sample feature F_yz aggregate (sum / concat / product) → vector F small MLP → (density σ, colour c) 4. Volume-render along ray → pixel colour
PropertyTriplaneNeRFGaussian splats
Storage3 × H × W × C (≈ 6–12 MB at 256², C = 32)MLP weights only (≈ 1–5 MB)N Gaussians × 60 floats (≈ 50–500 MB)
Render time, 256² image~30–80 ms~1–10 s (without grid acceleration)~5–15 ms
Memory at renderConstant per ray (3 bilinear lookups + MLP)Grows with sample densityGrows with #Gaussians per pixel
Mesh extractionQuery dense grid → marching cubesSameSplat-to-mesh conversion needed
EditabilityEdit features on 2-D planesRe-trainMove Gaussians directly
Core Clarification

Triplane rendering renders the triplane, not a mesh.
Mesh extraction is a separate downstream step.

A common misconception: triplane representations are stored, then converted to mesh, then the mesh is rendered. They are not. The rendering loop volume-renders the triplane directly by bilinear-sampling features along each ray. Mesh extraction (query a dense 3-D grid and run marching cubes) is only needed when the downstream consumer wants explicit triangles — e.g., for Houdini integration in the thesis line's procedural-pipeline use case.

Interactive Demo · Live

Cast rays through the triplane. The left pane shows the three feature planes (XY, XZ, YZ) for the current shape. The middle pane shows a ray's bilinear-sample path through each plane. The right pane shows the volume-rendered output. Drag the right canvas to orbit.

01 — Three feature planes SPHERE
02 — Ray-sample path RAY t = 0.5
ray position
03 — Volume-rendered output drag to orbit

Full Technical Paper

White paper · triplane mechanics · three-way comparison vs G-Splats vs VDB · universal-intermediate decision

Read Paper →
Related Thesis Chapters
Hierarchical Triplane
Direct downstream consumer — per-part triplanes in a local frame fix the inter-part-occlusion failure of the monolithic triplane studied here.
Hexplane AE
Six-plane generalisation — three triplane axes × two signs = six axis-aligned views. Same lookup mechanics, more planes.
UODF
Same axis-aligned principle but storing distance fields instead of learned features. Triplane-UODF variant in the UODF paper fuses both.
Appendix — Raw Materials
Transcripts & Source References
████████████████████████████████████████████████

██████████████████████████████████████
█████████ · ████ · █████████████████████
████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
Restricted Access