Skip to content

Conversation

@sebcrozet
Copy link
Member

0.22.0

Fixed

  • Fix bug in BVH tree node removal.
  • Fix bug in BVH tree building from exactly two leaves.

0.22.0-beta.1

Fixed

  • Fix invalid BVH state that could be reached after a removal resulting in a partial root.

0.22.0-beta.0

Added

  • Add a new Bvh acceleration data-structure. It replaces Qbvh entirely. It supports:
    • Traversals (best-first, depth-first, BVTT, leaf iterators, and leaf pairs iterator).
    • It can be constructed either incrementally by inserting nodes, or from a set of leaves using either the
      binned building strategy or the PLOC (without parallelism) strategy.
    • Dynamic leaf insertion, update, removal.
    • Incremental tree rebalancing.

Fixed

  • Fix clip_aabb_line crashing when given incorrect inputs (zero length direction or NAN).
  • Fix Segment::intersects_ray returning false-positive when the segment is zero-length. (#31).
  • Expose utils::sort3 and utils::sort2.

Modified

  • The local_point_cloud_aabb, point_cloud_aabb, and Aabb::from_points now takes an iterator over point values instead
    of an iterator to point references. Variants taking point references still exist and are named local_point_cloud_aabb_ref,
    point_cloud_aabb_ref and Aabb::from_points_ref.
  • Renamed SimdCompositeShape and TypedSimdCompositeShape to CompositeShape and TypedCompositeShape`.
  • The TypedCompositeShape trait now derives from CompositeShape.
  • Removed every *Visitor structures. Instead, either call Bvh::traverse (or Bvh::search_best, or Bvh::leaves, or
    bvh::leaf_pairs), or wrap your composite shape into CompositeShapeRef to access some generic implementation of
    various geometric queries for any composite shape.
  • All composite shapes now rely on the new Bvh acceleration structure instead of Qbvh.
  • The Qbvh has been removed. Use Bvh instead.

@sebcrozet sebcrozet merged commit 8b07dac into master Jul 24, 2025
7 checks passed
@sebcrozet sebcrozet deleted the release-0.22.0 branch July 24, 2025 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants