- The paper introduces a derivative-augmented cubemap representation that uses four RGBA texture fetches for cubic Hermite reconstruction and continuous analytic normals on star-shaped spherical surfaces.
- Spherical Hermite Maps improve shaded-image quality over bilinear sampling by 8.0–41.3 dB, outperform 16-tap bicubic filtering, reduce normal error by 9–13%, and run about 1.8× faster than bicubic.
- The method supports SH glyphs, radial depth-map impostors, and procedural planets, but requires four-channel storage, derivative-aware mipmap generation, and careful handling of cubemap seams and low-resolution artifacts.
Spherical functions are ubiquitous in real-time rendering and scientific visualization, and their efficient evaluation on the GPU is a recurring bottleneck. This paper introduces Spherical Hermite Maps, a derivative-augmented lookup table (LUT) representation that stores function values together with scaled partial derivatives in a padded cubemap, enabling bicubic-class reconstruction from a 2×2 texel footprint while producing continuous, analytic surface normals from the same four texture fetches. The work targets star-shaped radial surfaces x(ω)=c+R(ω)ω, which subsume spherical harmonic (SH) glyphs, radial depth-map impostors, and procedural planetary terrain.
Motivation and key insight
The standard trade-off for spherical LUT evaluation is between bilinear sampling—fast but prone to faceting and discontinuous gradients—and true bicubic filtering, which requires 16 point samples per query. Both can supply derivatives in principle, but practical implementations typically fall back to finite differences for normals, adding samples and introducing gradient noise that destabilizes specular highlights under camera motion. The paper's central observation is that cubic Hermite interpolation, which reconstructs a C1 function from values and derivatives at grid corners, yields continuous first derivatives at query points as a byproduct of value reconstruction. Because derivatives are stored per texel, the 16-quantity footprint of polynomial bicubic filtering collapses to four RGBA fetches carrying values, scaled tangential derivatives (ruh,rvh), and the mixed derivative (ruvh2).
Method
The representation is baked onto six cubemap faces with a one-texel gutter. Gutter texels are filled by evaluating the underlying function at the corresponding directions rather than by extrapolation or reflection, and derivative channels are likewise baked at every stored texel—including gutters—in per-face chart coordinates (u,v). For SH expansions, derivatives are computed analytically by differentiating the basis functions and converting to chart derivatives via the chain rule, eliminating finite-difference discretization error entirely; central differences remain available as a general fallback for procedural fields and mesh distance fields.
Reconstruction uses the tensor-product cubic Hermite basis over each cell, consuming all 16 quantities available from the four corner texels. Chart derivatives are extracted by differentiating the same basis with no additional LUT queries—the "free normals" property. Conversion to geometrically correct spherical gradients proceeds through the cubemap metric tensor: tangent vectors e1=∂ω/∂u and e2=∂ω/∂v are generally non-orthogonal, so the tangent-plane gradient is obtained by solving the 2×2 metric system via Cramer's rule, with determinant clamping near cube corners for numerical stability. The surface normal follows from the standard star-shaped formula involving R(ω)ω−∇S2R. Ray–surface intersection is performed against a bounding sphere followed by bisection refinement (8–16 steps) and Newton–Raphson polishing (2–4 steps), with iteration counts adapted to projected screen-space size.
Reconstruction accuracy
Against direct SH evaluation of an x(ω)=c+R(ω)ω0 glyph as ground truth, Hermite reconstruction improves shaded-image PSNR over bilinear by +8.0 dB at face resolution x(ω)=c+R(ω)ω1, rising to +36.1 dB at x(ω)=c+R(ω)ω2 and +41.3 dB at x(ω)=c+R(ω)ω3. It also exceeds 16-tap bicubic by +3.1 dB at x(ω)=c+R(ω)ω4 and +10.3 dB at x(ω)=c+R(ω)ω5, while using one quarter of the texture instructions. Value-only PSNR over 100K uniform random directions confirms the ordering independently of normal estimation:
| x(ω)=c+R(ω)ω6 |
Bilinear |
Bicubic |
Hermite |
| 8 |
23.1 dB |
29.1 dB |
32.2 dB |
| 16 |
35.5 dB |
51.5 dB |
62.7 dB |
| 32 |
48.0 dB |
73.0 dB |
93.1 dB |
Bilinear plateaus around 25 dB in the shaded benchmark regardless of resolution—a consequence of its fixed interpolation order—whereas Hermite approaches 67 dB at x(ω)=c+R(ω)ω7, near single-precision limits. These results indicate that derivative-augmented storage buys accuracy beyond what additional value-only samples provide at matched resolution.
Shading quality and cost analysis
On complex surfaces, analytic Hermite normals reduce mean angular error by 9–13% relative to finite-difference baselines while yielding stable specular highlights. On an asteroid impostor with 69 craters, ridges, and boulders at x(ω)=c+R(ω)ω8 resolution, Hermite attains 74.3 dB PSNR and 3.60° mean normal error versus 73.1 dB / 4.13° for bilinear plus finite differences—using 4 samples instead of 8—and remains ahead even when bicubic derivatives are computed analytically (72.7 dB / 4.19° with 16 samples). The gains concentrate on high-frequency features such as crater rims where finite-difference noise is worst. Procedural planet terrain shows a more modest but consistent improvement (+9% normal accuracy, +1.2 dB PSNR), which the authors attribute to smoother heightfield variation.
The cost comparison is nuanced. Hermite reads 16 scalars per query (4 fetches × 4 channels), matching 16-tap bicubic's scalar count and undercutting bilinear-plus-finite-difference shading (20 scalars, 5 texture ops). Fast bicubic approximations match the 4-fetch budget but do not yield usable analytic gradients, so shaded rendering typically costs 8 texture ops and 32 scalars. Under an equal-storage comparison—Hermite at resolution x(ω)=c+R(ω)ω9 with four channels versus bilinear at C10 with one channel—Hermite wins decisively on shaded quality (26.4 vs 21.4 dB at effective storage C11; 45.5 vs 24.7 dB at C12) while also providing normals in fewer texture operations. Runtime benchmarks corroborate this: Hermite sustains a consistent C13 speedup over 16-tap bicubic on both an integrated Intel Iris Xe (9.0 vs 5.1 FPS at 100K glyphs) and an NVIDIA RTX (16 vs 9 FPS at 1M glyphs), running only 10–30% slower than plain bilinear. Direct per-fragment SH evaluation without precomputation averaged 0.35 FPS, more than an order of magnitude slower than any table-based method.
Mipmap handling
A practically important finding concerns mip-chain construction. Naive box-filtering of all four RGBA channels breaks the scaled-derivative semantics, because filtered derivatives no longer represent gradients of the filtered signal. At mip level 1 (C14), naive filtering degrades mean normal angular error to 7.3° versus 1.3° for derivative-consistent generation—a C15 gap, with the 95th percentile widening to 17.1° versus 3.4°. The remedy is to filter only the scalar field and recompute derivative channels per mip level via finite differences. This requirement is a genuine operational constraint for production pipelines adopting the representation.
Applications
Three domains validate the method. Diffusion MRI orientation distribution function glyphs from a human brain dataset render at 4K with interactive frame rates (>30 FPS) on commodity hardware, supporting reliable interpretation of white-matter fiber orientations. Radial depth-map impostors encode complex meshes as star-shaped surfaces for view-independent level-of-detail, with analytic normals replacing noisy finite-difference shading. Procedural planets defined by multi-octave spherical heightfields benefit from amortized noise evaluation and naturally filtered values when terrain detail exceeds pixel resolution. The implementation is written in WGSL and exposed through pygfx and FURY via WebGPU bindings.
Limitations and open questions
The paper is explicit about several constraints. Folded chart parameterizations such as octahedral maps introduce derivative discontinuities at folds absent special handling. At very low resolutions (C16), seam artifacts appear due to discrete derivative estimates. The C17 per-texel storage overhead may not be justified for sparse scenes with few spherical functions or tight memory budgets, where higher-resolution value-only LUTs may be preferable. When derivatives come from central differences rather than analytic SH baking, they are exact only with respect to the Hermite interpolant, not the underlying continuous function, leaving C18 discretization error that can be noisy for undersampled high-frequency content. Open questions include whether folded-chart parameterizations can be made seam-consistent for derivatives, and how the method extends beyond star-shaped surfaces.
Conclusion
Spherical Hermite Maps reformulate spherical LUT evaluation around derivative-augmented storage, converting Hermite interpolation into a practical GPU primitive with seam-consistent cubemap padding and metric-correct gradient transport. The empirical case is strong: +8–41 dB PSNR over bilinear, quality exceeding 16-tap bicubic at one-quarter the fetch cost, 9–13% lower normal angular error, and a hardware-consistent C19 speedup over bicubic across integrated and discrete GPUs. The main costs—quadrupled per-texel storage and mandatory derivative-aware mip generation—are clearly delineated, making the applicability boundary of the technique well characterized.