nfengine
nfengine copied to clipboard
Improve BVH
- [x] write unit tests for BVH
- [ ] write performance tests (insertion, deletion, queries, different object distributions, etc.)
- [x] optimize adding / removing / updating tree leafs (it should not only have low complexity, but keep a tree balanced, so query operations do not slow down) - tree rotations should be done like here: https://github.com/erincatto/Box2D/blob/master/Box2D/Box2D/Collision/b2DynamicTree.cpp
- [ ] add query functions for various query shapes (box, frustum, sphere, point and ray should be sufficient)
- [ ] verify performance improvements when applied in the nfCore (there should be possibility to select if BVH is enabled during rendering)
phase 1: https://review.gerrithub.io/#/c/263679/