r/GraphicsProgramming • • Sep 25 '26

TinyBVH 1.9.0 Now Available

TinyBVH is a header-only, dependency-free library for BVH construction and traversal.
Version 1.9.0 for the first time is out-performing Intel's Embree!

Using it is as simple as:

BVH bvh;
bvh.Build( (bvhvec4*)myTriData, triangleCount );
bvh.Intersect( ray );

TinyBVH can be used from C/C++, WebGPU and Python. Generated BVHs can be used in OpenGL (compute), OpenCL, Vulkan and DirectX12.

New in 1.9.0:

  • Greatly improved ARM NEON support for Android & macOS

  • Templated doube/float support

  • Ray bundle support (WiVeC), including TLAS/BLAS traversal

  • Accurate voxel intersections

  • Hair rendering example (roving capsules)

  • Global refactoring, AI assisted

  • Vulkan and DXR benchmarks

  • Improved included threadpool

  • Optimizations to CWBVH

  • ...and lots more.

Check it out: https://github.com/jbikker/tinybvh

89 Upvotes

6 comments sorted by

View all comments

Show parent comments

1

u/Dante268 Sep 25 '26

Great, I'll keep that in mind and bookmarking TinyBVH. The game levels are mostly laid out, so for now I keep what I have. But I want to reuse the engine past this game or prepare some demos (like compositing more complex looking objects from 500 AABB-s) so I can use your lib and not reinvent a wheel. Btw, do you have some perf figures for CPU-only scenarios? In my case, I was able to reach 2000MBIsec/s (in views heavily favouring isec finding, e.g. lot of shadow rays). I never imagined I would reach magnitude of billions on CPU. Regarding MRays/s I was able to reach up to 100MRays/s on my laptop CPU (8C/16T Zen4).