Skip to content

Set Default Broad Phase to LBVH#212

Open
zfergus wants to merge 4 commits intomainfrom
change-default-broad-phase
Open

Set Default Broad Phase to LBVH#212
zfergus wants to merge 4 commits intomainfrom
change-default-broad-phase

Conversation

@zfergus
Copy link
Member

@zfergus zfergus commented Feb 7, 2026

Description

Set the default broad phase to LBVH.

As shown in #188, the LBVH outperforms all other methods on a variety of scenes.

Type of change

Please delete options that are not relevant.

  • Enhancement (non-breaking change which improves existing functionality)

Copilot AI review requested due to automatic review settings February 7, 2026 14:24
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates IPC Toolkit’s default broad-phase collision detection implementation to use LBVH (as introduced in #188) and aligns the getting-started tutorial text with the new default.

Changes:

  • Switch make_default_broad_phase() to construct LBVH instead of HashGrid.
  • Update the getting-started tutorial to state that the default broad phase is now LBVH.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
src/ipc/broad_phase/default_broad_phase.hpp Changes the default broad-phase factory to return LBVH.
docs/source/tutorials/getting_started.rst Updates the tutorial’s broad-phase list to reflect LBVH as the default.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@codecov
Copy link

codecov bot commented Feb 7, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.97%. Comparing base (3a093f3) to head (a443315).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #212   +/-   ##
=======================================
  Coverage   96.96%   96.97%           
=======================================
  Files         161      161           
  Lines       24747    24747           
  Branches      893      894    +1     
=======================================
+ Hits        23997    23998    +1     
+ Misses        750      749    -1     
Flag Coverage Δ
unittests 96.97% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

- Replace has_*() checks with bvh.size() <= 1 so functions require at
  least two primitives for collision tests.
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.

1 participant