userDaniel Pcancel
branchrust_reboot/main/triggerparentdelayedexit_optimcancel

63 Commits over 31 Days - 0.08cph!

29 Days Ago
Tests: Add TraceRay/-s perf tests The numbers of serial vs batched are a bit too crazy(128 rays: 7.5ms vs 0.3ms; 1024: 716ms vs 2.2ms), but looks like managed sort is too costly. Need to investigate the 8k batched hang(5min+ ) Tests: ran the perf tests
32 Days Ago
Tests: add perf tests for TraceRaysUnsorted and TraceAllUnordered(radius == 0) At 128 rays perf is same, at 8k we get 25% faster without water checks/41% faster with water. Need to profile deeper if we get more wins Tests: ran the new tests
32 Days Ago
Clean: reorganize GamePhysics tests into Unit child class Prep for Perf unit tests. Tests: ran all relevant tests, discovered we forgot to implement 1 fully - chasing up separately
32 Days Ago
Update: made GamePhysics.TraceRays return guaranteed nearest hits - added fast path for TraceRays with maxHits == 1 - Added tests for TraceRaysUnordered, rewrote test for TraceRays to be more thorough Tests: ran unit tests
33 Days Ago
Update: started on ShouldParentEntitiesJobs (incorrect name) - Simplified ShouldParentEntities (also incorrectly named) Converted CheckForObjUnderFeet to burst jobs, need to do IsClipping internals next (needs a bunch more on the GamePhysics side) Tests: none, not ready
33 Days Ago
Update: GamePhysics.TraceRays now supports ignore entities - Added TraceRealmRays (not unit tested, will do that tomorrow) - Added unit tests for TraceRays - TraceRays skips sorting if maxHitsPerTrace is less than 2 Tests: unit tests
34 Days Ago
Update: hook up PersistentObjectQueue as well - consolidate work scheduling to AddTo-/RemoveFromActiveTriggers - fixed an exception when unity sends 2 OnTriggerEnter for 1 entity (not sure how, but TriggerBase handled it already) Just the most complicated version left - custom queue with jobs Tests: jumped on and off from moving boat
34 Days Ago
Update: hooked up the crude queue, added server var - partial codegen (Grid<T> borkage) - Fixed a couple bugs with invalid tracking on TriggerParents in StableObjectCache Can move on to other queue impls Tests: craggy, toggled default and batched mode
34 Days Ago
Merge: from main
35 Days Ago
WIP: TriggerParent managed queue, no batching, no burst Still need to implement using PersistentObjectWorkQueue and experiment with batched-burst queries and compare all, as this version should have a bit more overhead due to bookkeeping. Tests: none, not plugged in
35 Days Ago
Merge: from main
41 Days Ago
Merge: from opt_triggerparent_timeslice - Optim: reduced component accesses and added support for triggerparent.ontick timeslicing Tests: jumped around the boat
41 Days Ago
Merge: from main