Table of Contents
Fetching ...

Projective Displacement Mapping for Ray Traced Editable Surfaces

Rama Carl Hoetzlein

TL;DR

Projective Displacement Mapping enables real-time ray-traced editing of displacement-mapped surfaces by substituting a direct sampling approach for traditional BLAS-based acceleration. The method builds parallel offset prisms on a low-poly base mesh and leverages a top-level hardware BVH (TLAS) to perform efficient ray tracing, avoiding dynamic bottom-level BVH rebuilds. A novel projective sampling loop, bilinear-prism interfaces, shading-normal correction $\mathbf{N}'_s$, and stochastic thin-feature sampling yield high-quality, watertight, and edge-continuous results with interactive editing, while maintaining a light memory footprint. The technique demonstrates substantial performance gains over BLAS-based approaches on a range of models and enables artist-driven look development workflows with ray-traced feedback, albeit with limitations for very large scenes or edits exceeding prescribed offset bounds.

Abstract

Displacement mapping is an important tool for modeling detailed geometric features. We explore the problem of authoring complex surfaces while ray tracing interactively. Current techniques for ray tracing displaced surfaces rely on acceleration structures that require dynamic rebuilding when edited. These techniques are typically used for massive static scenes or the compression of detailed source assets. Our interest lies in modeling and look development of artistic features with real-time ray tracing. We demonstrate projective displacement mapping, a direct sampling method without a bottom-level acceleration structure combined with a top-level hardware BVH. Quality and performance are improved over existing methods with smoothed displaced normals, thin feature sampling, tight prism bounds and ray-bilinear patch intersections. Our method is faster than comparable approaches for ray tracing, enabling real-time surface editing.

Projective Displacement Mapping for Ray Traced Editable Surfaces

TL;DR

Projective Displacement Mapping enables real-time ray-traced editing of displacement-mapped surfaces by substituting a direct sampling approach for traditional BLAS-based acceleration. The method builds parallel offset prisms on a low-poly base mesh and leverages a top-level hardware BVH (TLAS) to perform efficient ray tracing, avoiding dynamic bottom-level BVH rebuilds. A novel projective sampling loop, bilinear-prism interfaces, shading-normal correction , and stochastic thin-feature sampling yield high-quality, watertight, and edge-continuous results with interactive editing, while maintaining a light memory footprint. The technique demonstrates substantial performance gains over BLAS-based approaches on a range of models and enables artist-driven look development workflows with ray-traced feedback, albeit with limitations for very large scenes or edits exceeding prescribed offset bounds.

Abstract

Displacement mapping is an important tool for modeling detailed geometric features. We explore the problem of authoring complex surfaces while ray tracing interactively. Current techniques for ray tracing displaced surfaces rely on acceleration structures that require dynamic rebuilding when edited. These techniques are typically used for massive static scenes or the compression of detailed source assets. Our interest lies in modeling and look development of artistic features with real-time ray tracing. We demonstrate projective displacement mapping, a direct sampling method without a bottom-level acceleration structure combined with a top-level hardware BVH. Quality and performance are improved over existing methods with smoothed displaced normals, thin feature sampling, tight prism bounds and ray-bilinear patch intersections. Our method is faster than comparable approaches for ray tracing, enabling real-time surface editing.

Paper Structure

This paper contains 23 sections, 25 equations, 13 figures, 2 tables, 1 algorithm.

Figures (13)

  • Figure 1: Detailed geometry is interactively edited and ray traced with our technique. A base mesh of 7710 triangles with a 16-bit, $4096^2$ displacement map is ray traced at 3460x1024 in 28 milliseconds for one sample including primary rays, path tracing, reflection, refraction and shadows. Interactive sculpting of the displacement map while ray tracing supports a) sculpting rocks over a tree stump, b) sculpting while looking through a refractive object, and c) modeling the surface of the refractive object itself.
  • Figure 2: Method overview. Our technique starts with a low-poly base mesh, from which we pre-compute parallel offset prisms with positive and negative extents. Prisms and their AABBs are used to build the geometry graph and hardware-accelerated BVH. A custom program implements prism intersection and the Projective Displacement algorithm described in text.
  • Figure 3: Prism construction. a) Typical offset construction is based on multiples of the vertex normals which results in non-parallel extruded triangles and a non-linear sample space (brackets). One approach to handle this is by converting to canonical space in which rays are non-linear. b) Our method constructs a prism volume with parallel offsets by adjusting the normal length relative to the geometric normal resulting in parallel extruded triangles and a linear sample space. Rays intersect a prism at either triangles or bilinear patches.
  • Figure 4: Projective displacement mapping. a) Surface intersection proceeds along a ray while simultaneously tracking a parallel offset triangle (scanning triangle), $c_i$, where the barycentric projection of a sample $s_n$ gives the displacement texture location $d$. See text for details. b) When a ray enters or exits a prism it intersects at either a triangle top/bottom or a bilinear patch. Prism watertightness is achieved by ensuring sample continuity across these boundaries.
  • Figure 5: Shading normal correction. In low polygon meshes, when the angle between base triangles is high and no intermediate $C^1$ surface is used, the geometric normal $N_g$ can be noticeably carried through to the displaced surface $N_s$. This can be corrected to give smoothed displaced normals $N'_s$ by subtracting the geometric normal and adding in the interpolated normal $N'$, as discussed in Section 5.1.
  • ...and 8 more figures

Theorems & Definitions (2)

  • proof
  • proof