Repository navigation
ZoneService v0.3.0-beta
·
57 commits
to main
since this release
- BVH module can now instantiate separate trees
- Trees can now be reset, which allows ZoneService to be reset to a clean state
- Tables and buffers are now reused on tree rebuilds (buffers only if the number of tree nodes remains the same)
- Replaced default table.sort with custom quicksort, which allows 2 flat arrays to be sorted at once without having to allocate intermediate tables
- Added a morton bounds cumulative tracker which replaces O(N) bounds recalculation on tree rebuilds (only applies for dynamic zones)
- Rebuilding tree no longer allocates a new zones array each time
- Dynamic zones now use a BVH tree instead of a flat dictionary (significantly better scalability)
- Added shape support for Wedge and CornerWedge
- Replaced :rebuildBVH with :rebuildStaticBVH and :rebuildDynamicBVH
- Added :updateDynamicBounds which forces a morton bounds recalculation for the dynamic tree
- Modified :updateZone to allow optional CFrame and Size arguments
- :getSubjectsInZoneFlags changed to :getSubjectsInZone
- Fixed :getRandomPointInZone bug where cylinder height was on the Y axis