Fact-checked by Grok 2 weeks ago

Bounding volume hierarchy

A bounding volume hierarchy (BVH) is a tree-based spatial in that organizes a set of geometric into a of enclosing s, typically axis-aligned bounding boxes (AABBs), to accelerate queries such as tracing and . Each node in the tree represents a bounding volume that contains either a subset of primitives (at leaf nodes) or references to child nodes (at interior nodes), enabling efficient traversal by pruning subtrees whose volumes do not intersect the query. BVHs are particularly vital for ray tracing, where they reduce the computational cost of determining ray-primitive intersections from linear O(n) time to logarithmic O(log n) time by recursively testing intersections against bounding volumes before descending to children or . Construction typically involves top-down recursive partitioning of , often guided by heuristics like the surface area heuristic (SAH) to minimize expected traversal costs, or faster linear methods using Morton codes for parallelization on GPUs. Traversal algorithms, such as stack-based depth-first searches, further optimize performance by handling coherent and incoherent bundles, making BVHs suitable for both offline rendering of complex scenes and real-time applications. Over the past two decades, BVHs have emerged as the de facto standard acceleration structure for tracing, surpassing alternatives like kd-trees due to their numerical robustness, bounded memory usage (approximately 2n-1 nodes for n in binary trees), and adaptability to dynamic scenes through refitting or rebuilding techniques. They also extend to in simulations, where hierarchical bounding volumes enable efficient broad-phase culling of potential object interactions. Advances in hardware, including ray-tracing cores in modern GPUs, have further leveraged BVH optimizations like wide trees and compressed layouts for high-performance rendering.

Fundamentals

Definition and Purpose

A (BVH) is a -based spatial that organizes a set of geometric , such as triangles in a , by partitioning them into nested s. Each in the represents a enclosing a of , with containing individual or small groups, enabling efficient spatial queries like tests by minimizing the number of expensive primitive-level computations. The origins of BVHs trace back to the early , when they were developed to enhance ray tracing efficiency for rendering complex scenes. Seminal work by Rubin and Whitted in 1980 introduced hierarchical bounding volumes as a method to represent object space entirely through a of bounding volumes, accelerating calculations without additional spatial partitioning. The primary purpose of a BVH is to reduce the of geometric queries, such as determining ray-object s, from linear time in the number of n to average-case logarithmic time O(log n). This efficiency is achieved through a traversal that prunes subtrees whose bounding volumes do not intersect the query, avoiding unnecessary tests on irrelevant geometry. In its basic workflow, a BVH is constructed by starting with the entire set of scene primitives and recursively partitioning them into subsets, computing a tight for each subset to form the . This hierarchical partitioning continues until termination criteria, such as a maximum or a single per , are met, resulting in a balanced optimized for query performance.

Bounding Volumes

Bounding volumes serve as conservative geometric enclosures that surround individual objects or groups of objects within a , providing simplified approximations of complex to facilitate rapid rejection tests during or ray tracing queries. These volumes are designed to completely contain the enclosed geometry while minimizing , allowing intersection tests to quickly eliminate non-overlapping regions without examining the underlying . By prioritizing in shape and computation, bounding volumes enable efficient hierarchical structures for accelerating spatial queries in and simulation applications. The most prevalent bounding volume is the axis-aligned bounding box (AABB), a rectangular prism aligned with the world coordinate axes, defined by minimum and maximum coordinates along each axis. AABBs offer a straightforward construction by taking the extrema of the enclosed geometry's vertices, resulting in fast overlap tests due to their alignment. For ray-AABB intersection, the slab method computes entry and exit parameters along each axis by solving for intersections with the box's six planes, treated as three pairs of parallel slabs. Specifically, for a ray \mathbf{o} + t\mathbf{d} (origin \mathbf{o}, direction \mathbf{d}), the parameters are: \begin{align*} t_{\min_x} &= \frac{\min_x - o_x}{d_x}, & t_{\max_x} &= \frac{\max_x - o_x}{d_x}, \\ t_{\min_y} &= \frac{\min_y - o_y}{d_y}, & t_{\max_y} &= \frac{\max_y - o_y}{d_y}, \\ t_{\min_z} &= \frac{\min_z - o_z}{d_z}, & t_{\max_z} &= \frac{\max_z - o_z}{d_z}, \end{align*} with swaps if d_i < 0 for each axis i. The near intersection time is t_{\text{near}} = \max(t_{\min_x}, t_{\min_y}, t_{\min_z}) and the far is t_{\text{far}} = \min(t_{\max_x}, t_{\max_y}, t_{\max_z}); intersection occurs if t_{\text{near}} \leq t_{\text{far}} and t_{\text{far}} \geq 0. This approach ensures robust and efficient testing, making AABBs a cornerstone of modern bounding volume hierarchies. Oriented bounding boxes (OBBs) extend AABBs by allowing rotation to align more closely with the principal axes of the enclosed , typically derived via on the vertices. OBB intersection relies on the separating axis theorem (SAT), which projects both volumes onto up to 15 potential axes (the face normals of each box and their pairwise cross products) and checks for non-overlapping projections; separation along any axis indicates no . While OBBs provide tighter fits that reduce false positives in hierarchical traversal, their tests are computationally more expensive due to matrix transformations and multiple projections. Spheres and capsules represent simpler alternatives suited to specific geometries. Bounding spheres enclose objects within a minimal-radius (in ) or (in ), centered at the geometry's , with tests involving quadratic equations for rays or distance comparisons for overlaps; their simplicity yields very fast queries but looser enclosures for non-spherical shapes. Capsules, consisting of a flanked by hemispherical caps, are particularly effective for elongated forms like limbs in rigs, combining cylindrical and spherical properties for balanced tightness in deformable models. These volumes prioritize speed over precision in scenarios where approximates their shape. The choice of bounding volume involves trade-offs between enclosure tightness—which minimizes unnecessary tests by closely hugging the —and speed, where simpler shapes enable faster rejection. s dominate in practice due to their ease of update, minimal storage (six floats per box), and rapid slab-based tests, often outperforming tighter alternatives in overall hierarchy traversal despite occasional looseness. OBBs and capsules offer improved tightness for oriented or articulated objects, but their higher test costs (e.g., 10-15x slower for OBB-SAT versus ) limit use to cases where reduced hierarchy depth justifies the overhead; spheres excel in uniform scenarios but scale poorly for complex scenes. Empirical benchmarks confirm s' efficiency in ray tracing, with construction and traversal times scaling favorably for large models.

Hierarchical Tree Structure

A bounding volume hierarchy (BVH) organizes geometric primitives, such as triangles, into a to accelerate spatial queries like ray tracing or . The tree is typically rooted and can have an arbitrary k, though (k=2) or (k=4) variants are ; leaf nodes the primitives, while internal nodes encompass the bounding volumes of their children. Internal nodes in a BVH contain the bounding volume of their subtree—often an axis-aligned —along with pointers or indices to child nodes, enabling efficient during traversal. Leaf nodes, in contrast, hold lists of indices or direct references to the , with the number of primitives per leaf varying based on parameters to balance and traversal speed; for example, a single primitive per leaf simplifies intersection tests but increases . This node organization allows the hierarchy to represent the scene compactly, with each level providing progressively coarser approximations of the . Traversal of a BVH follows a top-down approach, testing the query (e.g., a ) against node bounding volumes to prune non-intersecting subtrees. A standard stack-based processes nodes depth-first, maintaining the current [t_{\min}, t_{\max}] to avoid unnecessary computations. The below illustrates a recursive variant for ray traversal:
function Traverse(ray, node, t_min, t_max):
    if not Intersect(ray, node.bounds, t_min, t_max):
        return
    if node.is_leaf:
        for primitive in node.primitives:
            hit = Intersect(ray, primitive, t_min, t_max)
            if hit and hit.t < t_max:
                t_max = hit.t  // Update for nearest hit
                // Record hit
    else:
        for child in node.children:
            Traverse(ray, child, t_min, t_max)
This method starts at the root with the ray's full extent, recursing only on intersecting children and updating the interval to prune distant branches. To ensure efficient traversal, BVHs are balanced to achieve a height of O(\log n) for n primitives, typically through median splitting along scene extents during construction, which distributes primitives evenly across subtrees. Unbalanced trees can lead to linear-time traversals in worst cases, degrading performance. In dynamic scenes where primitives move, BVHs can be maintained via refitting—updating bounding volumes bottom-up without restructuring the tree—or rebuilding the entire hierarchy periodically. Refitting is faster and leverages temporal coherence for minor motions but risks quality degradation if volumes loosen excessively; a common metric tracks the increase in surface area or volume ratios, triggering a rebuild when degradation exceeds a threshold like 0.4 to restore balance.

Design Considerations

Cost Functions and Metrics

The Surface Area Heuristic (SAH) serves as a fundamental cost function in bounding volume hierarchy (BVH) design, estimating the expected computational cost of ray traversal to guide split decisions during construction. It models the probability that a ray intersects a child node as proportional to the surface area of that child's bounding volume relative to the parent, assuming uniform ray directions. The cost for an internal node N is defined recursively as c(N) = c_T + \sum_{N_c} P(N_c \mid N) \, c(N_c), where c_T is the cost of traversing the node's bounding volume, P(N_c \mid N) = \frac{SA(N_c)}{SA(N)} with SA(\cdot) denoting surface area, and c(N_l) = c_I \cdot |N_l| for leaf nodes N_l containing |N_l| primitives, where c_I is the primitive intersection cost. This heuristic, originally introduced for automatic BVH construction, prioritizes splits that minimize overall expected traversal cost by balancing surface area distribution and primitive counts. BVH quality is evaluated using several metrics that quantify construction efficiency and runtime performance. Build time measures the duration to generate the hierarchy, often prioritizing SAH-based methods that achieve near-optimal quality in seconds for million-primitive scenes. Memory footprint assesses storage overhead, typically around 2 nodes per primitive in binary BVHs, influenced by split types and compression. Traversal speed, benchmarked in rays per second or nanoseconds per ray (e.g., high-quality SAH BVHs achieving ~4 ns/ray on modern CPUs), directly correlates with rendering or simulation throughput. Additional quality indicators include overlap ratio between sibling bounding volumes (ideally low to enable efficient culling), balance of subtree primitive counts (aiming for even distribution to minimize depth variance), and minimal empty space within volumes (measured by volume-to-primitive bounding tightness to reduce false positives). These metrics collectively ensure BVHs optimize for both build and query phases without excessive overlap or imbalance.

Memory and Traversal Trade-offs

Bounding volume hierarchies (BVHs) incur memory costs primarily through the storage of nodes, where internal nodes typically require 32 bytes each to encode an axis-aligned bounding box (AABB) using single-precision floats for the six min/max coordinates (24 bytes) plus child indices (8 bytes for two 32-bit pointers in binary trees). Leaf nodes add memory via primitive references, often 4 bytes per triangle index, with the total number of leaves equaling the scene's primitive count in standard binary BVHs. For a scene with n primitives, the BVH generates approximately $2n - 1 nodes, leading to memory usage scaling linearly with scene complexity, though optimizations like implicit indexing in complete trees can eliminate explicit child pointers. A key trade-off arises in tree depth versus width: deeper binary trees minimize bounding volume overlap by refining spatial partitions, reducing unnecessary intersection tests during traversal, but they increase the average number of nodes visited per ray, elevating traversal time. Conversely, wider trees (e.g., 4-ary or higher branching factors) reduce overall node count—for a full k-ary BVH, interior nodes number roughly (|N_l| - 1) / (k - 1), where |N_l| is the leaf count—saving memory and potentially shortening traversal paths, though they introduce challenges like handling empty child slots and require more complex splitting decisions that can increase overlap if not managed carefully. Traversal efficiency is further influenced by caching effects, where coherent memory layouts, such as depth-first storage in linear arrays, promote spatial locality to exploit CPU and GPU caches, minimizing demands during ray queries. Quantized coordinates, such as 16-bit floating-point representations for bounds, can compress node sizes (e.g., to 15-20 bytes in wide BVHs), reducing by up to 50% while preserving traversal accuracy for most scenes, particularly beneficial in GPU environments with limited . Balancing overfitting and underfitting in bounding volumes presents another : tightly fitted AABBs at each decrease overlap and thus traversal costs by more rays early, but they demand higher computational effort during to compute precise enclosures, potentially slowing build times. Looser bounds accelerate and simplify the but lead to more ray-node intersections, increasing runtime overhead; the surface area heuristic (SAH) often guides this balance by estimating traversal costs to favor moderately tight volumes without excessive refinement.

Construction Methods

Top-Down Approaches

Top-down approaches to bounding volume hierarchy (BVH) construction involve algorithms that begin with the entire set of enclosed in a and progressively subdivide them into child until a termination criterion is met, such as reaching a threshold of 1 to 4 per . These methods typically employ the (SAH) to guide the splitting process by evaluating potential split planes—often along the longest axis of the —to minimize the estimated traversal cost of the resulting . For each candidate split, the algorithm computes the SAH cost for the left and right child , selecting the plane that yields the lowest overall cost before recursing on the subsets of assigned to each child. To accelerate the exact SAH evaluation, which can be computationally expensive, variants approximate the cost using binning techniques, such as dividing the into a fixed number of bins (e.g., ) along the split axis to estimate distribution and surface areas without testing every possible split position. This approximation significantly reduces build time while maintaining high-quality hierarchies suitable for tracing. For simpler implementations, longest-edge splitting heuristics partition primitives by repeatedly splitting along the longest dimension of the current node's , bypassing SAH computations entirely to prioritize speed over optimality. The average of these top-down SAH-based constructions is O(n log n), where n is the number of , arising from the that balances the and node population. Parallelization is commonly achieved through task queues that distribute the recursive subdivision across multiple threads or processors, enabling efficient multi-core or GPU builds without sacrificing quality. For instance, NVIDIA's OptiX ray tracing engine employs a top-down construction with spatial splits—where child bounding volumes may overlap to better handle clustered —facilitating fast rebuilds in dynamic scenes.

Bottom-Up Approaches

Bottom-up approaches to bounding volume hierarchy (BVH) construction begin with individual bounding volumes for each as nodes and progressively aggregate them into parent nodes by clustering nearby or similar , forming the from the bottom up toward the . This method contrasts with top-down subdivision by emphasizing local merging decisions that can yield high-quality trees with low overlap, particularly when guided by cost heuristics like the surface area heuristic (SAH) increment during pairwise merges. Seminal work on this paradigm includes agglomerative clustering techniques, which iteratively select and merge the pair of clusters with the lowest merging cost until a single remains. Agglomerative clustering starts by treating each primitive's as an initial cluster and repeatedly merges the two closest clusters based on a dissimilarity , such as the increase in SAH cost or bounding volume surface area after union. To make this efficient, algorithms approximate the greedy selection process; for instance, approximate agglomerative clustering () restricts nearest-neighbor searches to a spatially coherent of candidates using a constraint tree built via Morton code and recursive , reducing search complexity while maintaining BVH quality comparable to or better than top-down SAH methods. This approach achieves build times up to 4 times faster than binned SAH on multi-core CPUs for scenes with millions of triangles, with ray tracing performance improvements of 15-30% due to tighter bounding volumes. variants, like parallel locally-ordered clustering (PLOC), further optimize this by processing local neighborhoods in parallel on GPUs, enabling scalable construction for complex scenes. A prominent bottom-up variant is the linear BVH (LBVH), which constructs the hierarchy in linear time by sorting primitives along a space-filling curve, such as the Morton code, and building a through non-recursive median splits at points where the code bits change, ensuring balanced and coherent groupings without explicit cost evaluation during construction. This method excels in parallel environments, as the and splitting phases map well to GPU thread blocks, providing predictable memory access patterns and enabling builds for massive scenes with millions of triangles in milliseconds on GPUs. These bottom-up methods offer advantages in GPU-accelerated pipelines due to their parallelism and reduced recursion depth, minimizing divergence and cache misses compared to recursive top-down builds, which is critical for real-time applications handling dynamic or large-scale geometry.

Incremental and Online Methods

Incremental and online methods for hierarchies (BVHs) enable efficient updates to the tree structure in response to changes in the underlying , such as deformations, insertions, deletions, or , without requiring complete reconstructions from scratch. These approaches are essential for dynamic scenes in real-time applications like ray tracing and , where full rebuilds would be prohibitively expensive due to their O(n log n) . By leveraging the existing tree topology and exploiting temporal or spatial , incremental methods balance update speed with traversal efficiency, often achieving near-static quality at a fraction of the computational cost. Refit-only techniques update BVHs by recomputing bounding volumes bottom-up after geometry modifications, while preserving the original tree topology to avoid costly restructuring. This process begins at the leaves, where new primitive positions (e.g., deformed vertices) are used to update leaf bounds, then propagates upward to adjust parent nodes until the root is reached, typically in linear time. The method is particularly fast for small deformations or rigid motions, where transformations can be applied directly to inner nodes without leaf updates, but it risks increasing bounding volume overlap over time as geometry diverges, leading to more traversal steps during queries. For instance, in ray tracing deformable scenes like cloth simulations, refitting enables interactive frame rates of 10-30 on contemporary hardware, outperforming full SAH rebuilds by factors of 5-10x in update time while maintaining comparable ray throughput after initial frames. However, prolonged use without occasional rebuilds can degrade performance by up to 2-3x due to overlap growth, as demonstrated in benchmarks with models containing 100k-1M triangles. Partial rebuild methods address the limitations of pure refitting by selectively reconstructing subtrees affected by significant changes, such as insertions or deletions, using mechanisms like or dirty flags to propagate updates efficiently. When a is inserted, it is added as a new , and affected ancestors are marked as "dirty" via a top-down traversal; a breadth-first then identifies and rebuilds only those subtrees where overlap or metrics exceed thresholds, often guided by surface area heuristics (SAH) variants. Deletions similarly remove leaves and trigger partial refits or rebuilds on dirty paths, with to batch operations and minimize immediate . This approach exploits temporal coherence by limiting rebuilds to regions of high change, achieving up to 20x fewer tests than refit-only in dynamic tracing scenarios, sustaining higher frame rates than full rebuilds. Online construction techniques build BVHs incrementally as primitives arrive in a stream, inserting them into an existing tree without preprocessing the full dataset. A common strategy uses a to perform branch-and-bound searches for optimal insertion points, minimizing SAH cost increases by evaluating potential leaf attachments and occasionally re-inserting nodes for balance. For example, each new primitive creates a node, which is linked via a greedy descent that prioritizes low-cost positions, with global updates every k insertions (e.g., 1% of nodes) to refine the tree. This debunks the notion that incremental builds are inherently inefficient, achieving SAH costs 10% lower than full top-down SAH constructions in 10-20% of the time for models up to 1M triangles, enabling ray tracing at 25-300 MRays/s on GPUs for streamed data. Parallel variants further accelerate insertions by 15-50% on multi-core CPUs, making it suitable for dynamic environments like interactive modeling. For animated scenes, dynamic BVH methods exploit temporal coherence through techniques like keyframe refits, where the tree is fully rebuilt only at sparse keyframes and refitted in intervening frames to capture motion patterns efficiently. Tree rotations—a local restructuring operation—extend standard refitting by swapping subtrees to reduce overlap without altering the overall , applied selectively based on motion vectors or SAH deltas to maintain quality across frames. In deformable animations such as character skins with 200k-500k triangles, this hybrid approach yields 2-4x faster updates than pure refits and 5-10x over full per-frame rebuilds, preserving ray tracing performance within 10-20% of static BVHs while handling rigid and non-rigid motions seamlessly.

Advanced Techniques

Compact Representations

Compact representations of bounding volume hierarchies (BVHs) focus on minimizing memory usage without substantially degrading traversal efficiency, which is crucial for large-scale scenes in ray tracing and . Key techniques include node compression, linearized storage, and split clipping, each targeting different aspects of the to achieve reductions in footprint while preserving the hierarchy's . Node compression primarily involves quantizing the coordinates of axis-aligned bounding boxes () stored in each . Instead of using full-precision floating-point values (typically 32 bits per coordinate), quantization maps coordinates to lower-bit integers relative to a reference frame, such as the parent's bounds, to exploit spatial locality and reduce precision requirements. For example, Cline et al. quantized AABB coordinates to 12-bit integers, enabling a lightweight BVH (LBVH) representation that stores bounds in approximately 6 bytes per node rather than 32 bytes for uncompressed , while maintaining sufficient accuracy for tests. This approach incurs a minor performance overhead during traversal due to dequantization but yields substantial memory savings. Additional can be achieved by eliminating redundant or empty nodes, such as nodes containing a single , which are merged into their parents to avoid unnecessary and storage. Linearized arrays provide another efficient storage mechanism by flattening the BVH tree into a contiguous memory block, eliminating explicit pointers and improving . The is serialized in depth-first order, where interior s precede their subtrees, and access is computed via simple offsets: for a at i, the left is at $2i + 1 and the right at $2i + 2 (assuming 0-based indexing). This pointerless layout reduces memory overhead by 8-16 bytes per compared to pointer-based trees and facilitates faster traversal on modern hardware. The system implements this exact scheme, converting the built BVH into a compact post-construction for streamlined intersection. Split clipping refines bounding volumes during or before hierarchy construction to minimize overlap and empty space, indirectly aiding compactness when paired with quantization. By adjusting child AABBs to be clipped against the parent's bounds, the technique ensures tighter fits that require fewer bits for quantized representation and reduce unnecessary overlap computations during traversal. Ernst and Greiner's early split clipping method preprocesses large primitives by recursively splitting and clipping their bounding boxes before BVH building, resulting in more efficient hierarchies with lower average node sizes and improved traversal speed. This can decrease effective memory usage by producing shallower trees with less redundant volume data. In production renderers, these methods combine for notable efficiency gains; for instance, Blender's Cycles offers a compact BVH option that applies quantization and optimized storage to reduce RAM consumption, albeit with increased build times, enabling rendering of complex scenes on memory-constrained devices.

Wide and Multi-Branch BVHs

Wide and multi-branch hierarchies (BVHs) extend the traditional structure by employing k-ary trees, where internal nodes encompass multiple children—typically with branching factors k ranging from 4 to 8—allowing each node to bound several subtrees simultaneously and thereby reducing the overall tree depth compared to variants. This design facilitates more efficient traversal by minimizing the number of nodes visited during ray-object intersection tests, particularly in scenarios with high parallelism. Construction of wide BVHs can proceed directly or through conversion from trees. Direct methods adapt the surface area heuristic (SAH) to evaluate multi-way splits, such as partitioning along the spatial in one or using clustering to group child nodes based on overlap minimization and cost estimates. Alternatively, BVHs are transformed into wide forms by detaching and reattaching child bounding boxes to parent nodes, often interleaving them to optimize memory layout for traversal. These approaches maintain quality while accommodating higher arity, though they require careful handling of overlap in child bounds. The primary benefits of wide and multi-branch BVHs lie in traversal efficiency, especially on modern hardware with wide SIMD units and large . By flattening the , they reduce the total number of traversal steps per — for instance, a 6-wide BVH can decrease steps by 20-40% relative to a 4-wide variant—leading to fewer cache misses and overall speedups of 10-20% in GPU-accelerated tracing. Production renderers like employ 4-wide BVHs to leverage these gains in workloads. Despite these advantages, wide BVHs introduce drawbacks in construction and potential quality trade-offs. Building them demands more complex algorithms to evaluate multiple split candidates, increasing preprocessing time and memory usage during hierarchy generation. Additionally, higher branching can result in greater overlap among child bounding volumes, potentially elevating intersection test costs if not mitigated through optimized clustering.

Recent Developments

In recent years, advancements in bounding volume hierarchies (BVHs) have focused on unifying representations, integrating machine learning, and optimizing for dynamic and large-scale scenes. The Unified Bounding Volume Hierarchy (UBVH), introduced in 2025, represents a novel data structure that merges bounding volumes and triangular scene geometry using skewed oriented bounding boxes (SOBBs). This unification allows identical intersection tests for both interior and leaf nodes, enabling efficient encoding of triangle pairs and reducing the number of primitives by up to 50%. As a result, UBVH accelerates incoherent ray tracing by 1.2× to 11.8× compared to traditional axis-aligned bounding box (AABB) BVHs, with significant reductions in ray-triangle intersection tests (e.g., 0.6–2.3 per ray versus 2.8–290.9 for AABBs). Building on techniques, the Neural BVH (N-BVH) from 2024 employs a neural architecture to answer arbitrary queries in scenes. It learns from input to predict , depth, and , using an adaptive BVH-driven probing scheme on a multi-resolution grid for sparse . This approach supports incremental construction by combining neural and non-neural elements, providing a representation over an more compact than traditional BVHs while integrating seamlessly into path-tracing pipelines for dynamic tracing. N-BVH achieves faithful approximations with enhanced in handling complex assets. For dynamic scenes with arbitrary modifications, the grid-induced BVH, proposed in 2021, introduces a hybrid structure combining a hierarchical grid tree for updates and a standard BVH for ray tracing. The grid enables constant-time O(1) insertions and deletions of objects, with overall BVH updates in O(M log N) time, where M is the number of modifications and N is the total primitives. This method offers competitive tracing speeds against binned surface area heuristic (SAH) constructions while achieving over 4× faster build times in scenes like power plants, making it suitable for interactive applications. Extensions to wide BVHs have been tailored for vehicle-to-vehicle (V2V) ray tracing in 2024 through the Simplified Interval BVH (SIBVH) algorithm. SIBVH optimizes the by deducing optimal split plane subintervals, employing a two-layer structure for static scenarios and dynamic objects in urban vehicular simulations. In tests with 3,049 triangular facets modeling a bus at 5 m/s, it reduces total ray tracing time by 23.35% (from 2080.53 s to 1594.72 s over 5 s) and tree-building time by 99.97% (from 521.09 s to 0.16 s), while maintaining high accuracy with an RMSE of 0.0021 against commercial tools for channel modeling. Ongoing developments include implicit BVHs, such as the implementation in ImplicitBVH.jl, which constructs perfect binary trees on-the-fly from bounding volumes without explicit storage of virtual nodes. This approach minimizes memory usage for massive datasets (e.g., 249,882 triangles in models) by storing only real leaves and supports GPU acceleration via , , oneAPI, and Metal for and ray tracing in dynamic scenes. Future enhancements aim to eliminate memory allocations entirely, enhancing scalability for large-scale simulations. Further advancements in 2025 include the DOBB-BVH, which transforms wide BVHs into oriented bounding box (OBB) trees using discrete rotations to share consistent transforms among child nodes, improving ray traversal efficiency on GPUs. Presented at High-Performance Graphics 2025, it enables faster intersection tests with minimal overhead. Additionally, Fused Collapsing integrates bottom-up collapsing into GPU-based wide BVH construction, enhancing tree quality and reducing build times for high-performance rendering applications.

Applications

Ray Tracing

In ray tracing, bounding volume hierarchies (BVHs) accelerate the process of determining ray-object intersections by organizing scene geometry into a , where each represents a enclosing its child nodes or . A begins traversal at the and tests against the 's ; if there is no , the entire subtree is pruned, avoiding unnecessary computations for that branch. If the intersects the volume, traversal proceeds to the child nodes, continuing recursively until reaching nodes, where direct tests are performed against the underlying such as triangles. This hierarchical significantly reduces the number of tests required, transforming the naive complexity—where n is the number of —into an average-case O(log n) performance for typical scenes. Traversal algorithms for BVHs in ray tracing can employ either stack-based or stackless methods to manage the tree exploration. Stack-based traversal uses an explicit to store pending nodes in a depth-first manner, pushing child nodes onto the stack when the ray intersects a parent and popping them as needed to ensure complete coverage of potential hits. Stackless variants, such as those using parent pointers or the restart trail technique, avoid the stack entirely by iteratively re-entering the tree from ancestors when necessary, reducing memory overhead at the cost of potential re-traversals of nodes. Both approaches test -bounding volume intersections at internal nodes and ray-primitive intersections only at leaves, enabling efficient handling of complex scenes with millions of . BVHs provide substantial acceleration by rejecting bounding volumes that do not intersect the , particularly for coherent rays like those in primary visibility. They are frequently used in hybrid setups alongside other structures like kd-trees to optimize for specific characteristics, achieving comparable or superior in ray tracing benchmarks. BVHs efficiently manage all types of rays in rendering pipelines, including secondary rays for shadows, reflections, and refractions, as these follow the same traversal logic without requiring specialized handling. For instance, in for , Blender's Cycles renderer employs a BVH to trace paths that account for diffuse interreflections, specular highlights, and caustics, enabling high-fidelity simulations of light transport.

Collision Detection

Bounding volume hierarchies (BVHs) play a crucial role in by enabling efficient broad-phase culling, which identifies potential s between objects in simulations without exhaustive pairwise checks. In this , two BVHs—one representing the query object or group and the other the —are traversed recursively, starting from their roots. Overlaps between sibling bounding volumes are tested; if no overlap exists, entire subtrees are pruned, while overlapping pairs propagate to child nodes, ultimately yielding candidate object pairs for precise narrow-phase tests. This hierarchical approach leverages the tree structure to minimize computations, as detailed in foundational work on axis-aligned (AABB) trees for deformable and rigid models. To enhance performance in dynamic environments with moving objects, BVHs are often integrated with sweep-and-prune algorithms. Sweep-and-prune first performs one-dimensional temporal along a primary axis (e.g., x-axis) to quickly eliminate pairs separated by large distances over time, producing a reduced set of potential colliders. This is followed by three-dimensional BVH traversal on the pruned candidates to confirm spatial overlaps, combining the linear-time sorting efficiency of sweep-and-prune with the hierarchical culling of BVHs. Such hybrid methods are particularly effective for scenes with moderate motion coherence. For continuous collision detection, which accounts for motion between discrete time steps to avoid tunneling artifacts, BVHs support time-of-impact (TOI) queries. Motion bounds—expanded bounding volumes that enclose an object's swept path over a time interval—are used in a ray-like traversal of the BVH, where the "ray" follows the relative motion to find the earliest time. This extends overlap tests to continuous domains, ensuring accurate contact timing for simulations. A practical example is the , which utilizes a dynamic BVH variant called the double dynamic bounding volume tree (DbvtBroadphase) for broad-phase in real-time games and simulations. By maintaining two AABB-based trees (one for static and one for dynamic objects) and incrementally updating them, Bullet reduces the computational complexity of pair detection from O(n²) brute-force checks to O(n log n) on average, enabling scalable handling of thousands of interacting bodies.

Scene Graph Management

Bounding volume hierarchies (BVHs) can augment 3D scene graphs in interactive applications by providing spatial acceleration for operations like visibility determination and rendering optimization. In this context, BVHs overlay spatial indexing on the hierarchical , allowing efficient and querying without examining every primitive. This is valuable in real-time environments such as (VR) and (AR), where high frame rates demand reduced computational overhead for scene updates. Hierarchical culling in BVH-augmented scene graphs involves traversing the tree to eliminate subtrees outside the view or occluded by closer . For , the process tests bounding volumes against camera frustum planes; fully outside volumes prune entire subtrees, achieving logarithmic-time complexity in balanced trees and reducing draw calls. integrates tests like hardware queries or hierarchical Z-buffers, marking subtrees as invisible if blocked, optimizing in complex environments. Integration of level-of-detail () techniques with BVHs associates resolution variants with nodes for view-dependent selection, updating bounds to encompass selected and enabling seamless switching without full rebuilds. Instancing leverages shared sub-BVHs for repeated , applying instance transforms during traversal to compress and support efficient updates for duplicates. These BVH enhancements support scalable management of large, dynamic scenes by streamlining spatial queries in rendering pipelines.

Distance Computations

Bounding volume hierarchies (BVHs) facilitate efficient distance computations by adapting the standard overlap tests used in intersection queries to instead calculate the minimum between bounding volumes (BVs), enabling rapid of irrelevant tree branches during traversal. In this approach, the traversal begins at the root nodes and recursively descends only into child nodes where the BV-BV is less than the minimum found so far, leveraging the hierarchical structure to avoid exhaustive pairwise checks among . For -aligned bounding boxes (AABBs), a common BV type in BVHs, the between two boxes is computed by determining the separation along each principal : for the x-, the separation is \max(0, |c_{x1} - c_{x2}| - \frac{w_1 + w_2}{2}), where c_{x1} and c_{x2} are the center coordinates and w_1, w_2 are the widths; analogous calculations apply to y and z axes, with the then derived as the square root of the sum of squared separations. This -wise computation is efficient and avoids full geometric tests until necessary, making it suitable for accelerating queries in dynamic scenes. Closest point queries using BVHs extend this traversal to find the minimum from a query point to a set of primitives, such as triangles in a . The algorithm starts by computing the from the query point to the root BV; if this exceeds the current minimum, the subtree is pruned. Otherwise, traversal proceeds to child nodes, updating the minimum as smaller BV-point distances are encountered, until reaching leaf nodes where exact primitive-point distances are calculated using methods like the closest point on a triangle. To optimize, an initial search radius around the query point can be used, shrinking it iteratively as closer points are found, which further reduces the number of nodes visited. This process ensures that only potentially relevant portions of the hierarchy are explored, providing sublinear query times for large models. For all-pairs distance computations between two sets of objects, each represented by its own BVH, a bidirectional traversal is employed to identify the global minimum without evaluating every primitive pair. The algorithm queues pairs of nodes from the two trees, starting with the roots, and dequeues the pair with the smallest BV-BV ; if this distance exceeds the current minimum, the search terminates, otherwise recursion continues on child node pairs until leaves, where primitive distances refine the minimum. This method exploits spatial coherence and hierarchical to achieve significant speedups over naive O(n²) approaches, particularly for non-overlapping or widely separated sets. In , BVHs are applied to path planning for obstacle avoidance by generating approximate distance fields that guide while ensuring collision-free paths. For instance, in dual-robot cooperative assembly tasks, BVHs accelerate distance queries between manipulator links and environmental obstacles, enabling real-time replanning of configurations to maintain safe clearances during motion.

Hardware Acceleration

GPU-Based Ray Tracing Acceleration

GPU-based ray tracing acceleration leverages dedicated hardware in modern graphics processing units (GPUs) to perform efficient Bounding Volume Hierarchy (BVH) traversals and intersection tests, enabling real-time rendering in complex scenes. These implementations optimize for the parallel nature of GPUs, handling thousands of rays simultaneously while minimizing memory access and computational overhead. and have integrated specialized units into their architectures starting from 2018, significantly outperforming software-only approaches by accelerating the core operations of BVH node traversal and ray-primitive intersections. NVIDIA's RT Cores, introduced in the Turing architecture in , provide fixed-function hardware dedicated to BVH traversal, ray-bounding volume intersection testing, and ray-triangle intersection testing. Each Streaming Multiprocessor () in Turing GPUs includes one RT Core, delivering a total throughput of approximately 10 GigaRays per second for ray-triangle intersections across the GPU, with subsequent generations like , Ada, and Blackwell significantly increasing performance through architectural improvements such as doubled triangle test rates. BVH construction and updates are facilitated via the , which utilizes GPU compute shaders for building, allowing high-quality hierarchies to be generated in milliseconds for dynamic scenes. AMD's RDNA architecture, beginning with in 2020, incorporates Ray Accelerators as fixed-function hardware units focused on ray-bounding box and ray-triangle intersection testing, complementing software-based BVH traversal managed by compute shaders. Each Ray Accelerator supports up to four ray-box tests or one ray-triangle test per clock cycle, with and RDNA 4 iterations enhancing throughput via wider execution units and improved stack management for deeper traversals. This design enables efficient BVH processing in (DXR) and RT pipelines, achieving performance comparable to in intersection-heavy workloads. To optimize memory bandwidth and cache efficiency on GPUs, BVH formats are tailored with compact node structures, such as 32-byte nodes consisting of a 24-byte axis-aligned bounding box (AABB) represented by six single-precision floats (three for minimum and three for maximum coordinates) plus 8 bytes for child pointers or primitive indices, often with compressed linking to reduce indirection. These formats support fast SIMD-style processing in hardware units, minimizing fetch latency during traversal. For dynamic scenes in real-time applications, frame-to-frame BVH refits—updating bounding volumes without full —enable low-latency adaptations, typically completing in 1-2 milliseconds on high-end GPUs. In games like , which employs hybrid ray tracing with path-traced overdrive modes, these refits maintain interactive frame rates by efficiently handling animated geometry and instance transformations in the top-level acceleration structure.

Applications Beyond Ray Tracing

Bounding volume hierarchies (BVHs) enable efficient parallel broad-phase on GPUs through implementations leveraging or compute shaders, significantly accelerating simulations involving numerous dynamic objects. These approaches traverse BVH structures in parallel across GPU threads to identify potential colliding pairs, reducing the computational load for subsequent narrow-phase tests. For instance, employs BVHs internally for , supporting refits via the refitBVH function to update bounding volumes after modifications without rebuilding the entire , which is particularly useful in dynamic scenes. This GPU-accelerated broad-phase, often combined with BVH traversal, provides significant speedups for large-scale simulations. A notable example is the BVH-based framework that restructures hierarchies on the GPU for deformable objects, reporting significant performance gains in collision queries compared to prior methods. In addition to collision detection, GPU BVHs facilitate real-time proximity and distance field computations essential for robotics and machine learning applications like pathfinding. By traversing the hierarchy to compute minimum distances between query points and scene geometry, these methods support adaptive distance fields constructed via octrees accelerated by BVH culling, enabling queries at rates exceeding 500,000 per second on mid-range GPUs. In robotics motion planning, parallel BVH traversal on GPUs handles complex proximity checks for sample-based algorithms, reducing planning times by factors of 10-50x for environments with thousands of obstacles, as demonstrated in CUDA-based collision query systems. For machine learning pathfinding, such as in reinforcement learning environments, BVH-accelerated distance queries provide signed distance fields that inform agent navigation. Emerging applications integrate BVHs with neural rendering techniques, particularly in hybrids involving models for generation and manipulation since 2023. These approaches use BVHs to accelerate queries in neural representations, such as particle-based modeled by Gaussians, where BVH construction and traversal enable efficient visibility sorting and radiance computation during sampling. For graphs, BVH structures organize neural elements hierarchically, supporting scalable rendering of dynamic compositions in -based synthesis, with reported accelerations of 2-5x in novel view generation over non-hierarchical neural methods. This fusion enhances controllability in generative tasks, allowing graphs to guide processes while BVHs handle spatial acceleration for real-time feedback.

References

  1. [1]
    4.3 Bounding Volume Hierarchies
    Bounding volume hierarchies (BVHs) are an approach for ray intersection acceleration based on primitive subdivision, where the primitives are partitioned into ...
  2. [2]
    [PDF] A Survey on Bounding Volume Hierarchies for Ray Tracing
    Bounding volume hierarchies (BVHs) are a ray tracing acceleration data structure used to accelerate the search for ray intersections with scene primitives.
  3. [3]
    Bounding Volume Hierarchies - CS 418
    Bounding Volume Hierarchies (BVH) take advantage of that trend to accelerate finding which object a ray intersects from linear to logarithmic time.Missing: definition | Show results with:definition
  4. [4]
    [PDF] Efficient Collision Detection Using Bounding Volume Hierarchies of ...
    This paper presents a method using bounding-volume hierarchies of k-dops for efficient collision detection in complex environments, including moving objects.
  5. [5]
    [PDF] A Survey on Bounding Volume Hierarchies for Ray Tracing
    The idea is to start with an empty BVH and insert scene primitives one by one into that BVH. For each scene primitive, we find an appropriate leaf node by ...
  6. [6]
    A 3-dimensional representation for fast rendering of complex scenes
    This paper describes a method whereby the object space is represented entirely by a hierarchical data structure consisting of bounding volumes, with no other ...Missing: origin | Show results with:origin
  7. [7]
    [PDF] OBBTree: A Hierarchical Structure for Rapid Interference Detection *
    Abstract: We present a data structure and an algorithm for efficient and exact interference detection amongst complex models undergoing rigid motion.
  8. [8]
    Efficient Collision Detection of Complex Deformable Models using ...
    In this paper, we describe a way to speed up overlap tests between AABBs, such that for collision detection of rigid models, the difference in performance ...
  9. [9]
    [PDF] Bounding Volume Hierarchies for Collision Detection - IntechOpen
    Mar 30, 2012 · However, there is trade-off between simple and tight bounding-volume. Simple bounding-volume seems to perform faster intersection test while ...
  10. [10]
    [PDF] Bounding Volume Hierarchies of Slab Cut Balls
    Jun 26, 2008 · The hierarchy construction algorithm includes a new method for the con- struction of tight bounding volumes in worst case O(n) time, which means.
  11. [11]
    Ray tracing complex scenes | ACM SIGGRAPH Computer Graphics
    Ray tracing complex scenes. SIGGRAPH '86: Proceedings of the 13th annual conference on Computer graphics and interactive techniques.
  12. [12]
    [PDF] On Quality Metrics of Bounding Volume Hierarchies
    The surface area heuristic (SAH) is widely used as a predictor for ray tracing performance, and as a heuristic to guide the construction.Missing: original | Show results with:original
  13. [13]
    [PDF] Quantized bounding volume hierarchies for neighbor search ... - arXiv
    Mar 25, 2019 · In our previous work, we constructed a linear bounding volume hierarchy ... A node with a single-precision AABB is then only 32 bytes (Fig. 3a).
  14. [14]
    [PDF] On fast Construction of SAH-based Bounding Volume Hierarchies
    A reasonably fast, O(N logN) build scheme (which still is today's baseline in building good BVHs) has been proposed in [18]; how- ever, though significantly ...
  15. [15]
    [PDF] Fast Parallel Construction of High-Quality Bounding Volume ...
    We propose a new massively parallel algorithm for constructing high-quality bounding volume hierarchies (BVHs) for ray tracing.<|control11|><|separator|>
  16. [16]
    [PDF] Spatial Splits in Bounding Volume Hierarchies - NVIDIA
    The basic idea is to split a given node using either object list partitioning or spatial partitioning by selecting the more cost- effective scheme. We ...
  17. [17]
    [PDF] Fast Agglomerative Clustering for Rendering
    The first automated BVH construction algorithm combined a surface area heuristic for mea- suring cluster quality and an incremental clustering approach [7], but ...
  18. [18]
    [PDF] Efficient BVH Construction via Approximate Agglomerative Clustering
    Tracing cost ranges from 15% to 30% less than that of the SAH-BIN built BVH, and it remains lower than the full. SAH build for all scenes but Buddha. More ...
  19. [19]
    [PDF] Parallel Locally-Ordered Clustering for Bounding Volume Hierarchy ...
    Abstract—We propose a novel massively parallel construction algorithm for Bounding Volume Hierarchies (BVHs) based on locally-ordered agglomerative ...<|separator|>
  20. [20]
    [PDF] Fast BVH Construction on GPUs
    We present two novel parallel algorithms for rapidly constructing bounding volume hierarchies on manycore. GPUs. The first uses a linear ordering derived ...
  21. [21]
    [PDF] PLOC++ Parallel Locally-Ordered Clustering for Bounding ... - Intel
    Jeffrey Goldsmith and John Salmon. 1987. Automatic Creation of Object Hierarchies for Ray Tracing. Computer Graphics and Applications 7, 5 (1987), 14–20.
  22. [22]
    [PDF] Efficient SIMD Single-Ray Traversal using Multi-branching BVHs
    Some obvious approaches would be to use 16-wide SIMD to test the three dimensions of a 4-wide BVH, or to compute the three edge tests for four triangles.
  23. [23]
    [PDF] Wide BVH Traversal with a Short Stack - Intel
    In this paper we introduce an algorithm for wide bounding volume hierarchy (BVH) traversal that uses a short stack of just a few entries. This stack can be ...
  24. [24]
    [PDF] Arnold: A Brute-Force Production Path Tracer - Iliyan Georgiev
    Aug 2, 2018 · At present it employs a 4-wide BVH. (Wald et al. 2008) built using a binned surface area heuristic (SAH) method (Popov et al. 2006). Rays are ...
  25. [25]
    [PDF] UBVH: Unified Bounding Volume and Scene Geometry ...
    The resulting set of leaves is then passed to a standard bottom-up construction algorithm. 4.2. BVH Traversal. Most contemporary massively parallel traversal ...Missing: seminal | Show results with:seminal
  26. [26]
    N-BVH: Neural ray queries with bounding volume hierarchies - arXiv
    We adopt a ray-centric approach to this problem and devise N-BVH, a neural compression architecture designed to answer arbitrary ray queries in 3D.
  27. [27]
    Grid-induced bounding volume hierarchy for ray tracing dynamic ...
    Jul 1, 2021 · The method uses a hierarchical grid tree and a BVH tree. The grid tree is updated, then the BVH tree is partially rebuilt for accessed nodes.
  28. [28]
    [PDF] An Improved Bounding Volume Hierarchies Method for V2V Ray ...
    Dec 21, 2023 · The simulation results indicate that, SIBVH based RT algorithm can trace rays much faster than traditional RT method, and improve computational.
  29. [29]
    StellaOrg/ImplicitBVH.jl: High-Performance Bounding Volume ...
    High-Performance Cross-Architecture Bounding Volume Hierarchy for Collision Detection and Ray Tracing. New in v0.5.0: Ray Tracing and GPU acceleration via ...
  30. [30]
    Efficient stack-less BVH traversal for ray tracing - ACM Digital Library
    We propose a new, completely iterative traversal algorithm for ray tracing bounding volume hierarchies that is based on storing a parent pointer with each node.
  31. [31]
    [PDF] Performance Comparison of Bounding Volume Hierarchies and Kd ...
    We present a performance comparison of bounding volume hierarchies and kd-trees for ray tracing on many-core architectures (GPUs). The comparison is focused ...
  32. [32]
    BVH - Blender Developer Documentation
    Cycles supports multiple ray-tracing acceleration structures, depending on the device. When rendering with multiple devices, a different BVH may be built for ...
  33. [33]
    [PDF] Efficient Collision Detection of Complex Deformable Models using ...
    Nov 6, 1998 · Abstract. We present a scheme for exact collision detection between complex mod- els undergoing rigid motion and deformation.
  34. [34]
    [PDF] Collision Detection in Interactive 3D Environments
    Gino van den Bergen. ELSEVIER. AMSTERDAM • BOSTON • HEIDELBERG • LONDON. NEW ... 5.3.2 Bounding-Volume Hierarchies. 199. 5.3.3 AABB Trees versus OBB Trees.
  35. [35]
    [PDF] Fast Continuous Collision Detection for Articulated Models
    This motion formulation is used to check for collisions with the environment, as well as computing the contact location of the links of the articulated model at ...
  36. [36]
    [PDF] Bullet 2.80 Physics SDK Manual
    • btDbvtBroadphase uses a fast dynamic bounding volume hierarchy based on AABB tree ... The broadphase adds and removes overlapping pairs from a pair cache. The ...
  37. [37]
    [PDF] Proximity Queries and Penetration Depth Computation on 3D Game ...
    This paper discusses methods for performing proximity queries (collision detection, distance computation) and penetration depth computation on a large.Missing: BVH | Show results with:BVH
  38. [38]
    CGAL 6.1 - Fast Intersection and Distance Computation (AABB Tree)
    The AABB tree component offers a static data structure and algorithms to perform efficient intersection and distance queries against sets of finite 2D or 3D ...Tree of Triangles, for... · Tree of Segments for... · Tree of Polyline and Polygon...Missing: volume | Show results with:volume
  39. [39]
    [PDF] BVH Split Strategies for Fast Distance Queries
    Jan 27, 2015 · This paper presents a number of strategies focused on improving bounding volume hierarchies. (BVHs) to accelerate distance queries.
  40. [40]
    Trajectory Planning of Dual-Robot Cooperative Assembly - MDPI
    The original path planning of dual-robot is carried out combined with BVH algorithm. In order to solve problems of existing many broken lines and circling ...<|control11|><|separator|>
  41. [41]
    [PDF] NVIDIA TURING GPU ARCHITECTURE
    RT Cores accelerate Bounding Volume Hierarchy (BVH) traversal and ray/triangle ... introduction of RT Cores and Tensor Cores, Turing hardware enables real-time ...
  42. [42]
    Raytracing on AMD's RDNA 2/3, and Nvidia's Turing and Pascal
    Mar 22, 2023 · A BVH is a tree, or a structure where each node connects to several child nodes. Your GPU starts at the node at the top of the tree, and checks ...Missing: specifications | Show results with:specifications
  43. [43]
    NVIDIA Turing Architecture In-Depth | NVIDIA Technical Blog
    Sep 14, 2018 · Each SM contains 64 CUDA Cores, eight Tensor Cores, a 256 KB register file, four texture units, and 96 KB of L1/shared memory which can be ...Turing Tu102 Gpu · Turing Memory Architecture... · Turing Rt Cores
  44. [44]
    [PDF] NVIDIA OptiX 9.0 - Programming Guide
    Jul 3, 2025 · Most NVIDIA OptiX API functions do not own any significant GPU state; Streaming. Assembly (SASS) instructions, which define the executable ...
  45. [45]
    RDNA 2 hardware raytracing - Interplay of Light - WordPress.com
    Dec 27, 2020 · A new hardware unit, the Ray Accelerator, has been added to implement ray/box and ray/triangle intersection in hardware.
  46. [46]
    RDNA 4's Raytracing Improvements - Chips and Cheese
    Apr 14, 2025 · RDNA 4's doubled intersection test throughput internally comes from putting two Intersection Engines in each Ray Accelerator. RDNA 2 and RDNA 3 ...
  47. [47]
    [PDF] Traversal methods for GPU ray tracing - cescg
    For the reasons listed above we have chosen AABB BVH as an acceleration data structure for our ray tracing en- gine. Hierarchy construction is handled by a ...
  48. [48]
    How to build a BVH – part 4: Animation - Jacco's Blog
    Apr 26, 2022 · The process starts at the leaf nodes, which contain the (now changed) triangles. Each leaf node gets an updated bounding box.
  49. [49]
    [PDF] NVIDIA AMPERE GA102 GPU ARCHITECTURE
    ... Turing RT Core includes hardware-based BVH traversal, ray/bounding box intersection testing, and ray/triangle intersection testing. The GA10x RT Core improves ...
  50. [50]
    PxTriangleMesh — physx 5.1.2 documentation
    After modifying the vertices you must call refitBVH for the refitting to actually take place. This function maintains the old mesh topology (triangle indices).
  51. [51]
    Toward Real-Time Scalable Rigid-Body Simulation Using GPU ...
    We propose a GPU-parallelized collision detection and response framework for rigid-body dynamics, designed to efficiently handle densely populated 3D ...
  52. [52]
    [PDF] Efficient BVH-based Collision Detection Scheme with Ordering and ...
    Linear BVH Construction: BVHs are now widely used in various computer graphics applications because of their low memory foot- print and flexibility in being ...
  53. [53]
    [PDF] GPU-based Parallel Collision Detection for Real-Time Motion ...
    In practice, we are able to process about 500,000 collision queries per second on a $400 NVIDIA GeForce 480 desktop GPU, which is almost 10X faster than prior.
  54. [54]
    GPU-Based Parallel Collision Detection for Real-Time Motion ...
    We present parallel algorithms to accelerate collision queries for sample-based motion planning. Our approach is designed for current many-core GPUs and ...
  55. [55]
    [PDF] 3D Gaussian Ray Tracing: Fast Tracing of Particle Scenes
    Gaussian splatting rasterizer proposed by Kerbl et al. [2023]. Generality. Splat rasterization accelerates rendering by process- ing a screen grid of pixel ...
  56. [56]
    [PDF] N-BVH: Neural ray queries with bounding volume hierarchies
    2024. N-BVH: Neural ray queries with bounding volume hierarchies. In Special Interest Group on Computer Graphics and In- teractive Techniques Conference ...