AMD FidelityFX™ Hybrid Shadows sample
This sample demonstrates how to combine ray traced shadows and rasterized shadow maps together to achieve high quality and performance.
Ray tracing has become a practical part of real-time graphics, but animated geometry still presents a difficult scaling problem. The paper Ray Tracing Massive Amounts of Animated Geometry by Gruen et al., winner of the third-place Wolfgang Straßer Award (Best Paper) at High-Performance Graphics 2026, tackles a common production case: scenes with many complex objects that all deform differently. In a conventional ray-tracing pipeline, every uniquely animated mesh may require both its vertices and its acceleration structure to be updated each frame. That computational cost grows with triangle density, so geometrically dense foliage, grass, crowds, or creatures can quickly consume the frame budget. As each unique animated object may need to store its own set of bounding volume hierarchy, memory consumption may become prohibitively high.
Figure 1. Animated scene with roughly 585 million animated triangles @ 60 frames per second (AMD Radeon™ RX 9070 XT GPU at 1080p)
The central idea of the paper is to decouple animation cost from triangle count. Instead of applying animation directly to every triangle, the method builds a low-resolution tetrahedral cage around the original, non-animated mesh. During preprocessing, the mesh is split into small, disjoint pieces associated with the tetrahedra. Static mini-BLASes are then built for these pieces once and reused. At runtime, only the cage is animated. Rays that enter an animated tetrahedron are transformed into the corresponding rest-pose space, where they can intersect the static geometry. The resulting motion is an approximation: vertex movement is represented by a piecewise-linear deformation induced by the cage, rather than by a smooth global bend or by full per-vertex animation.
This makes the approach especially attractive for massive scenes where many copies of the same asset are animated in unique ways. Each unique deformation needs its own animated cage, but it can share the same rest-pose mini-meshes and mini-BLASes. The paper demonstrates this with trees, grass patches, and frogs, and shows a combined scene of roughly 585 million animated triangles rendered at 60 frames per second on an AMD Radeon RX 9070 XT graphics card at 1080p. The key message is not that tetrahedral cages replace every animation technique, but that they provide an additional new low-cost option when acceleration-structure updates, animation time, or memory footprint become the bottleneck. The paper also sits alongside similar independent work by Luton and Tricard (2026), which explores tetrahedral indirection but uses multiple hardware rays and no clipping step. Please note that tetrahedron-cage driven animations can be combined with the Microsoft DirectX® Raytracing (DXR) Functional Spec, Part 2 – e.g. partitioned top-level acceleration structures – and can also coexist with cluster level acceleration structures.
Figure 2. High-level workflow.
The trade-off is control over quality versus performance. A coarser cage is cheaper and smaller, while a finer cage can follow the original animation more closely. The method is best suited to connectivity-preserving animation, such as swaying vegetation, grass, crowds, distant characters, or animation level of detail. It is less appropriate for cases where topology changes, very small-scale motion, or sharp character deformations are the visual focus. Please note though that tetrahedron-cage driven animations can also be used in the context of partitioned top-level structures and can also coexist with cluster level acceleration structures.
Overall, the paper presents tetrahedral cages as a practical bridge between rich animated content and hardware-accelerated ray tracing. By animating a compact proxy and reusing static rest-pose geometry, it opens the door to scenes that would otherwise be too expensive to update every frame. Future work will focus on improving cage generation and animation quality, as well as integration with modern ray-tracing pipelines. Please note that we are hard at work to create DXR samples and a header-only C++ library that allows building high-quality tetrahedral cages for skinned objects, keyframe-animated objects, and static objects. If you’re working on animated geometry at scale, we encourage you to dive into the full paper below, and stay tuned to GPUOpen as this research continues to evolve.
Links to third party sites are provided for convenience and unless explicitly stated, AMD is not responsible for the contents of such linked sites and no endorsement is implied. GD-97.
DirectX is a trademark of the Microsoft group of companies.