Technical guide
Ray Tracing BVHs Explained: BLAS, TLAS, Traversal, and Why Games Need Them
Understand ray-tracing BVHs, BLAS and TLAS, how traversal avoids brute-force ray tests, and why acceleration-structure builds, updates, memory, and dynamic geometry matter in games.
On this page
- Ray tracing needs a faster way to find possible intersections
- BLAS organizes geometry; TLAS organizes instances of that geometry
- Traversal narrows the search before detailed primitive tests
- Building an acceleration structure is real GPU work with real memory cost
- Moving an instance is different from deforming its geometry
- Traversal cost is only one part of ray-tracing performance
- Modern APIs can add specialized acceleration data without replacing the hierarchy
- What BLAS and TLAS tell you—and what they do not
Ray tracing needs a faster way to find possible intersections
A ray can potentially intersect many triangles and other primitives in a 3D scene. Testing every ray against every primitive would waste enormous amounts of work, especially when most geometry is nowhere near the ray. Ray-tracing APIs therefore expose acceleration structures that organize scene geometry so traversal can reject large regions before performing detailed intersection tests.
A bounding volume hierarchy, or BVH, is a common acceleration technique. Bounding boxes enclose progressively smaller groups of geometry in a tree. During traversal, a ray that misses a higher-level box can skip the geometry below it. NVIDIA describes BVH traversal as an alternative to testing every primitive, while DirectX Raytracing exposes a two-level acceleration-structure model that applications build before tracing rays.
| Layer | Contains or references | Main role |
|---|---|---|
| Geometry | Triangles or procedural primitives represented by AABBs | The detailed primitives a ray may ultimately intersect |
| BLAS | One or more geometry descriptions | Organizes object-level geometry for efficient intersection search |
| TLAS | Instances that reference BLAS objects plus per-instance data such as transforms | Organizes scene-level instances and lets the same geometry appear in multiple places |
| Traversal | The hierarchy plus a ray | Rejects irrelevant regions and searches for candidate intersections |
| Hit/intersection processing | Candidate primitive hits and shader-visible data | Determines and processes the relevant intersection after traversal finds candidates |
BLAS organizes geometry; TLAS organizes instances of that geometry
Microsoft defines bottom-level acceleration structures as sets of geometry and a top-level acceleration structure as a set of instances of bottom-level structures. A BLAS can contain triangle meshes or procedural primitives initially represented by axis-aligned bounding boxes. The TLAS then references BLAS objects through instances, carrying scene-level information such as transforms.
That split is useful for games because geometry and placement do not always change together. A mesh can remain the same while an instance moves, rotates, or appears many times. NVIDIA’s DXR tutorial demonstrates this directly: a TLAS can instantiate the same BLAS multiple times with different transformation matrices. The API model therefore avoids duplicating object geometry merely because the scene contains repeated instances.
Traversal narrows the search before detailed primitive tests
Conceptually, traversal starts with coarse bounding volumes and follows only branches whose bounds intersect the ray. Each successful bounding-volume test narrows the candidate region until traversal reaches geometry that may require a triangle or procedural-primitive intersection test. The exact tree layout, branching strategy, builder heuristics, and hardware implementation are not fixed by the simple BLAS/TLAS vocabulary and can differ across implementations.
The practical goal is not to make intersection tests disappear. It is to avoid performing detailed tests against geometry that spatial reasoning can rule out early. Scene organization, ray coherence, geometry distribution, and the quality of the built acceleration structure can therefore affect how much traversal work a ray requires.
Building an acceleration structure is real GPU work with real memory cost
Acceleration structures are not free metadata. DXR requires applications to query prebuild information, allocate result storage and temporary scratch space, and issue an acceleration-structure build. NVIDIA’s DXR tutorial likewise describes BLAS generation on the GPU and separate scratch and result buffers. This is one reason ray tracing can add GPU-memory pressure beyond textures, render targets, and ordinary geometry buffers.
Build quality and build speed can also pull in different directions. Static geometry may justify work that improves the structure used for many later rays, while rapidly changing content may need cheaper updates or rebuilds. Applications choose API build flags and update strategies according to their content; there is no universal rebuild schedule that is optimal for every game.
Moving an instance is different from deforming its geometry
Rigid motion is a natural fit for the two-level hierarchy. If the underlying mesh does not change, a game can keep its BLAS geometry and change the instance transform represented at the TLAS level. Microsoft’s current DXR sample shows a BLAS built for cube geometry while the TLAS is rebuilt with updated transformation matrices for animated instances.
Deforming geometry is a different problem because the spatial relationship among the primitives inside the BLAS changes. Skinned characters, destructible meshes, procedural geometry, and other dynamic content can therefore create different acceleration-structure maintenance costs from a rigid object that merely changes its world-space transform. How a specific engine handles those cases is an implementation decision, not something the words BLAS and TLAS alone determine.
Traversal cost is only one part of ray-tracing performance
A faster hierarchy search does not make the rest of a ray-tracing workload free. Games still generate rays, execute intersection and hit or miss logic, access materials and textures, schedule shading work, manage denoising or reconstruction, and often combine ray-traced effects with conventional rasterization. The number and type of rays, bounce count, scene complexity, alpha-tested geometry, divergence, resolution, and effect design can all change the workload.
This is also why a hardware label such as “RT core” should not be treated as a complete ray-tracing benchmark. Hardware vendors can accelerate parts of traversal and intersection, but APIs expose a broader pipeline and games differ substantially in how they use it. Compare measured performance in the actual game and settings you care about rather than deriving frame rate from one acceleration-structure property.
Modern APIs can add specialized acceleration data without replacing the hierarchy
Ray-tracing APIs continue to evolve around expensive geometry cases. DirectX Raytracing 1.2 adds opacity micromaps, for example, so alpha-state information can be represented in dedicated data and used during traversal instead of always requiring the same shader work for alpha-tested geometry. Microsoft’s implementation material still builds BLAS and TLAS around that data rather than replacing the two-level scene hierarchy.
That distinction matters when reading optimization claims. A new feature can reduce one category of traversal or shader work without changing the basic need to spatially organize geometry. Treat BVHs, specialized micromap data, shader execution, denoising, and upscaling as related but separate parts of the renderer.
What BLAS and TLAS tell you—and what they do not
BLAS and TLAS are useful mental models for understanding how a game separates object geometry from scene instances and how rays avoid brute-force intersection searches. They also explain why ray tracing consumes memory and why dynamic scenes can require acceleration-structure maintenance before or during rendering.
They do not reveal a GPU’s proprietary BVH layout, traversal-unit design, exact memory footprint, branching factor, or performance in a particular game. Those details require implementation-specific documentation or measurements. For PC performance analysis, acceleration structures are one important layer between scene geometry and ray hits—not a standalone score for either a GPU or a game engine.
Sources
Primary and technical sources
Technical details can vary by exact model, firmware, and platform. These are the sources used for the factual claims in this article.
01 Microsoft DirectX Developer Blog
Announcing Microsoft DirectX Raytracing — two-level acceleration-structure model02 Microsoft Learn
DXR acceleration structure types — BLAS geometry and TLAS instances03 Microsoft Learn
DXRSimpleLighting sample — BLAS and per-frame TLAS transforms04 Microsoft DirectX Developer Blog
D3D12 Opacity Micromaps05 NVIDIA Developer
DX12 Raytracing tutorial — acceleration structures, BLAS and TLAS06 NVIDIA Developer
Ray Tracing — bounding volume hierarchy overview