userDaniel Pcancel

1,163 Commits over 304 Days - 0.16cph!

29 Days Ago
Merge: from loading_entity_leak - Fix zombie ProtoBuf.Entity objects never being returned to the pool after loading a game save Tests: loaded craggy save, editor default procgen save and staging server save
29 Days Ago
Bugfix: don't leak ProtoBuf.Entity during loading of a save Loading a 4.3k staging server save drops ~129k objects (almost all get spilled, but that's okay after a load) Tests: loaded craggy save, loaded default editor procgen save and stagign server procgen save
29 Days Ago
Merge: from fix_treetoolrenderer - Brings back tree rendering on editor start with a scene with trees without triggering database refresh Tests: variosu editor open scenarios, various scene switching scenarios with domain reload
29 Days Ago
Update: TreeToolRenderer is now a static class instead of an EditorTool State survives domain reload (somehow). Tests: started editor on swamp_a, craggy, swamp_b - rendered okay. Triggered a couple domain reloads via code changes - still rendered with active scene + scene switching
29 Days Ago
Bugfix: bring back tree rendering on first scene opening - Defer tool initialization to first scene load to avoid triggering asset refresh in InitializeOnLoad Tests: closed and opened editor with various starting scenes. Switched scenes.
30 Days Ago
Merge: from ioentity_slacklevels_pooling - Fixes IO entity spilling List<float> on save Tests: build a couple water tanks and checked pool.print_memory
30 Days Ago
Bugfix: use pooled List<float> during IOEntity's slacklevels saving Avoids inflating List<float> in the pool, and eventually spilling them, leading to GC pressure. Tests: on craggy build a couple water tanks - checked that "List`1[System.Single" pooled active objects doesn't go negative
30 Days Ago
Merge: from playerinventory_allocs - Removing extra garbage allocs from ToArray calls Tests: equipped armor when already having one, tried to pick up an extra map with one already in the belt
30 Days Ago
Update: PlayerInventory.CanWear no longer allocates an extra array - BufferList.CopyFrom now clears orphaned range, to avoid holding references to managed objects Tests: gave myself 2 maps - they correctly avoided being both on the belt
30 Days Ago
Update: pool ToArray allocation in PlayerInventory.WearItemCheck - BufferList now can copy from List Tests: equipped armor while wearing armor
31 Days Ago
Merge: from parallel_validatemove - Clearing 2 TODOs Tests: unit tests
31 Days Ago
Clean: remove minor TODOs - append Job to the last burst job without it - Replace .Add with AddNoResize Tests: uni tests
31 Days Ago
▇█▉▊▉: ▋▋▌▊ ▅▆▄▉▍▌▉▍_▄█▋█▉█▆▉▌▋█▅ - █▋▉█▍▅▉▄▉▆▅▅▆█▇▉▄▍▌ ▇▅▍ ▅▍▋▆▋▄▇▅▊ ▍ ▇▊▅▇▋▉ ▊▋▆██ ▌▇ ▊▆▄▄▊█▍, ▌▄▄▉▉ ▉▊▋▇ ▉▊▇▉▅▋▉▆▍▌▉▇▅ ▅▊▉ ▇▊▅▍▊ ▍▊▊▋▅▆▊▊▋▅ (▌▌▇▊▋ ▄▆▅▌▋ ▋▅▌▍) - ▉▋▍▇▄▆▍▉ ▋▊▊▄▋▋▄▉▌▊▆ ▋▊ █▋█▌ █▅▉▇▅▌▌▌▋, ▅▇▇▆▊▉▅▇▅▊▄▋, ▇▉▄▇▌▅▌▄▆▅▄█▉ ▉▄█ ▆▉▌▌▆▄▊▋▆▉▍▋ ▉▇▇▄ █▅▅ ▊█▍▇▋▍▋█ ▄▇▌▋▄█▋ ▄▉▌▅▉▇▍ ▇▅▇▅▅: ▉▍▋▍▄▇██▍▆ ▆▄▌█▉ ▉▇▇▌▍ (▇▌▆▋▅▆, ▉▋▊▄▌▍ ▉▌▆ ▉▆▇) + ▋▇▉▍ ▋▌▆▋▆ + ▅▋▇▍▋█▆ ▋▊▊▍ ▋▋▌▊▋▌▇▆ + ▉▄▅▄▇▍ ▊█▇▇▄█ ▉▇ ▄█▄▇▅▅ - ▉▆▄▉▍▆▉▄▉ ▍▅▌█▄▆ ▆▍▋▍▍▅▄ ▌▇▊▅█▇▋ ▇▊ █▋▆ ▋▆ ▄▊▅▅█▉▌█ ▆▆▍▉ - ▅▌▉▆▇▅▄█ █▊▍▋▋▆▇
31 Days Ago
Merge: from main Tests: none, no conflicts
31 Days Ago
▅▊▇▇▌█▄▌: ▍▌▌▇ █▋▊▋█▆▇█▊▄▇▅▍▄▉▋▉▊ ▉▍▄▌ ▄▇▄█▅▋▉▉ ▄▊█▋▍▋ ▋▇▆█▉▉▄▄ ▆▆█▌▍▇▇▆▇▌ ▆▊▋▆ ▋▍▅▉▍▅▄▋ ▋▅▅▌▍▅█▄▇▉▋▍▄▌▍▇▌▅▆.▋▆▉▉▆▄█ ▊▆▇▄ ▊▌▄ ▉█ ▆▋▅█▅▌▆▉▋▌ ▋▆▌▄▋ ▊▋▍▆█: ▆▊▌▋█ ▉▅▋▇▌▌ ▌▉▇ ▋▊▋▋▄▌ ▄▄▋█▆▆▋▆▊▇▌
31 Days Ago
Clean: fixing various whitespace issues and unused "using" statements Tests: compiles in editor
31 Days Ago
▆▉▋▍▇: ▅▊▇▇ ▅▇▍▄▌▍▊▉ ▆▋▇ ▍▍▌▌▌█▉▋.▋▋▌█▊▇▋█▊▅▉▌█▋▄▆▇ ▆▋█▋▉: ▋▄▇▆, ▌▆▊▌▄▌▊ ▍▊▊▇▍▇
31 Days Ago
Merge: from main Tests: ran unit tests
31 Days Ago
Update: add profiling scopes to search-component parts of GamePhysics.CheckSphere<T> and CheckCapsule<T> This is a slow path if there are many terrain/water volumes being hit Tests: none
31 Days Ago
▌▌▉▉▅: ▅▉▇▇▆▉█▄▉▋▊▌▇▇▅▋▍▅▆▇▆ - ▋▋▇ ▌▍▆▅▍▅-▋▇▆▌▋▅▆ ▌█▍▅▇▆▅ █▍▌▋▄: ▊▌▊ ▆▅▍▇ ▋▍▉▇▇
31 Days Ago
Tests: GamePhysics tests now contain cases with both water and terrain ignore volumes This is kind of a bug fix, since it wasn't testing both paths, but ah well Tests: ran unit tests
31 Days Ago
▋▊▋▊▇: ▊▋▆▌▋▊▇▆█▍▅▅▌▆▉▆▄█▌▍▊ - ▇▇▆▊█▅ ▉▌▋▉ - ▄█ ▅█▄▅▉'▍ ▋▊▍▅▋▍ █▄▋▅▌▋▅▌ ▋ ▊▇█ ▄▆▇█ ▋█▋▇▄▋▋ ▋▉▄██ ▄▆▊▅▉: ▆▅█▇
31 Days Ago
▅▅▆▉▄▆: █▋▆▍▍█▌▌.█▄▄▋▄▊▉▋▊▄██▄ - ▆▌▉▉ ▌▉▊▍ ▇▍ ▄▆▊▆▋ ▋█▅▆▆ ▄▆▆▌▋▅▅▌▇▉▅ ▅▊▆▆▍▊ ▇▄▌▅▌▄▄ ▄███▌ ▄▅▍ ▅ ▅▍▍, ▉▊▌▊▇▌▊ ▋'▋▍ ▊▇▍▋▄▄▄ █▄▅▅ ▅▌▆▋▋▄▆▇ ▆▍█▆ ▇█▍▉█ █▇▆▆ - ▆▄▌ ▄█▄▍ ▅▌▋ ▄▋'▋ ▇▌▉▍▊ ▌▇█ ▉▍▅▅▊ ▇▅▉▊▍ ▋▍ ▌▍▌█ ▊▇▍▆▆: ▇▆▇█, ▉▄▅▍█▌▉ ▌▌▋▄▊▍
31 Days Ago
▊▌▉▇▊: █▄▆▅▉▅▊▅.▇▋█▊▅▄▆█▉█▋▇▋ - ▅▉▉ ▋▆▉ ▅▊ ▊▇▅▇▅▄██▅▇▊ ▇▍▄▅▅ - ▋▇█▍ ▊▄█▋ ▄▌ ▆█ ▋▇▇▊█▉▊█▆▆ ▄▍▋▍▇▅ ▅▍▌▅ ██▄▍▅▅▄▉ ▌▇▇▆▌▄ ▋▌▍▄▍: █▇▋▌, ▉▆█▅▊▊▆ ▊▄▍▅▄▇
31 Days Ago
▉▆▅▍▋: ▊▅▆▌▌▋▄▋.▆▇▅▌▍▄█▅▄▅▄▅█ - █▇▍ ▅█▄ ▇▊ ▍▆█▄▋▍▍▍▄▄▉▊▆▄▍ ▌▉█▍▉▆ ▉▅▅▋▆ - ▆▋▆▊▇ ▊▋▅ ▇▅▊▋▅▄ ▉▆▄▄ █▉ ▆█ ▇▅▊▄▄▋▇█▄▇ ▆▉▋▅▊▇ ▋▍▍▄ ▊▌▅ ▋▆▍▄▍ █▅▊▆▍: ▋█▅▄, ▆▊▍▌▍▄▇ ▉▉▇█▊▋
31 Days Ago
Clean: remove unused NativeList Tests: none, trivial change
31 Days Ago
▍▆▆█▉: ▉▄▋▍▆▉▊▍.▊█▋▌▉▌▋▆▇▍▊█▍█▄▄▉ - ▍▆▉██▍▊ ▆▉▍▉▍▄▆▌ █▌▍▆▍▋▆▌▅▌ ▉▇▊▍ ▉▅▍▋█ ▇▇▄▉ ▅▉▅▊▍▌▆▆▇▊▋▍▅▉▋▅▌▊ ▇▇▉▍ - ▊▄▆▄▌▉▆ ▉▍▉▇▇▋▋▌▅▆▄▍▉▆▊▍▍ █▉ ▆▊▊▊▄▊▍▆▍▅▇▍▍▊▍▋▊▅ ▊▌▋▍▆: ▊▇▆█ ▄▊▍▄▆
31 Days Ago
▌▊▌▄▊: ▌▅▋▋▉▄▄▉.▊▄▉▄▇▋▍▍▌▉▍▆▋▋▋▉ - ▍▅▊▋ ▇ ▌▌▄▍▆ ▌▄█▌▄▌▋▅ ▌▄▊█▇█▋█▄▄ ▍▋▍▄ ▇▆▌▇█ ▇▆ ▌▆'▉ ▅▄▍ ▍▉▍▉▄▉▉▌ ▊▌█▌▆: ▄▍▋ ▋▄▅▆ ▋▊▅▄▋
31 Days Ago
▋█▄▅▌: ▇▇▋▆▄▅▍▌.▉▆▄▇▌▊██▌▍▉▌▅▆▆█▋ - ▊▊▅▆█ ▊▊▅▉▉-▍▇▉▊ ▋▅▌▌▋▅ ▄▉▉▍▊ ▍.▉▉▆ ▋▄ ▄▇▉ ▇▉▌▉▅▉▇▅ ▆▄█▅▆: ▇▋▊▇ █▉▆▊▅
31 Days Ago
▋▌▊▋▍: ▉█▋▄▆▊▇█.█▌▋▉▊▊▊▅▇▉▌▊▌▉▄▌▄ - ▍▄▇▆▋▉▄▌ ▆██▋ █▇▊█▅▋▉▌▋▊▄ ▉▆▇▇▌: ▄▄▄▇ ▍▍▇▉▄
31 Days Ago
Clean: removing dead code Tests: compiles
31 Days Ago
Update: add GamePhysics.TraceSphere and TraceSphereUnordered - added GamePhysics.Sort(NativeArray...) - replaced some inline code with TraceSphere call Works the same as Trace(>0 radius) and TraceUnordered(>0 radius) Tests: unit tests + staging demo playback
31 Days Ago
Update: add GamePhysics.TraceRays and TraceRaysUnordered - works the same as Trace(0 radius) and TraceUnordered(0 radius) - Replaced some inlined code with a call to TraceRays Tests: ran unit tests
32 Days Ago
Optim: use Burst to generate commands in GamePhysics.OverlapSpheres - It used to be there, but lost it during refactor Tests: unit tests
32 Days Ago
Clean: minor changes to GamePhysics - Renamed batch methods to be plural - Split GamePhysics.CheckSphere<T> to separate OverlapSpheres - added profiling scopes Tests: unit tests
32 Days Ago
Update: move RemoveTerrainMask to GamePhysics Tests: unit tests
32 Days Ago
Update: move GenerateCheckCapsuleQueries to GamePhyics and utilize Tests: ran unit tests
32 Days Ago
Update: split GamePhysics.CheckCapsule<T> - forbid CheckCapsule(batch) from returning ColliderHits - this is to better represent relationship to non-batched CheckCapsule Tests: unit tests
32 Days Ago
▊██▌▋▉: ▌██▅▉▆▇▌.█▅▄▋▊▅▄▋▌▆▌▋▄▆▉▉▋ - ▅▅▊▅▊▆▋ ▄▄▊▅▆▋ ▋▅▆▍▋▌▊ ▊▌█▋▍▊▆ ▄▍█▉▌▍█ █▅▊▊▋ ▌▆▋▉ ▉ ▌█▄▉▊▉▅▉▋▌▅.▇▋▌▆▄▄▋▄▊▄▇▇ ▇▆▄ ▉▆ ▍▍█▌▆▍ ▍▉▊▋ ▇█▆ ▄▅▅▆▄█▌ █▋ ▋▉▊▍ ██ ▅▊▆▊▄▌ ▉▋ █▆▅▋▌▋▇ ▇▇▊▇▄▅▆ ▄▅▉▊▌: ▆▅▍▆ ▇▉█▇▍ █▊▇ ▇█▇▊▄▍▊ ▍▋▇█ ▅▄▉▇▆▌▊▄
32 Days Ago
▇▇▊▍█▆: ▊█▋▄▆▇▋▉.▊▇▅▄▆▋▅▆█▇█▋▄▊▋▆▉ - █▉▇▆▄▊▆ ▊▅▍▇▆▆▇ ▌█▋▇ ▍▄▇▊ ▉ ▍▄▍▇█▊▆▍▋▉█.▌▌█▆▉▋▌█▅▌▌▄(▆▄▊▇▇) ▆▋▆▆ ▌▍▇▆▅ ▇▌▍ ▍ ▍▉▋▋▉▍ ▄█▋▆ ▅▌█ ▋▅▄▊▇▋▇▌▋ ▍▆▅▍ ▍'▄▄ █▇▄█ ▆▌ ▆▆██/▊▇▌██ - ▄█▇▅'▅▅ █▄ ▄▊▄▆▊ █▊▉▄▍: █▇▍▄ █▆▌▌▌ + ▆▌▄▄ ▄▆▉▆▋▊▋▍
32 Days Ago
Update: adding GamePhysics.CheckCapsule(batch) Last factored out func - should be able to complete refactor shortly Tests: none, will integrate to tests next
32 Days Ago
Bugfix: fixing native allocation leaks in tests Tests: ran the tests with leak detections enabled
32 Days Ago
Update: GamePhysics.CheckCapsule<T>(batch) internalized layermask handling There's room for optims, but not going to pursue them for now - will test later how the perf deteriorates with the new APIs. Tests: ran relevant unit tests
32 Days Ago
Update: GamePhysics.CheckSphere(batch) now able to handle mask validation internally - Renamed GamePhysics.IgnoreCollision to MasksToValidate (prev name could be misleading and confusing) - undid sphere command building as that wasn't meshing well with MasksToValidate flow - Added UtrilityJobs.GatherJob<T> (will need to go through other code and clean up similar/same jobs) I still need to update GamePhysics.CheckCapsule, and replace inlined code with new versions Tests: all relevant unit tests
32 Days Ago
Clean: simplify NativeList.CopyFrom<T>(ReadOnly) Tests: none, trivial change
32 Days Ago
Update: Rewrite GamePhysics.HandleIgnoreCollision(batch) to allow for explicit control of what exclusion volumes to check Tests: ran updated test
32 Days Ago
Update: adding GamePhysics.HandleIgnoreWater - comes with it's own consistency test Going to use those to try to refactor some of the existing code and hopefully shrink it Tests: ran new test
32 Days Ago
Tests: adding tests that generate various "HandleIgnoreCollision" scenarios - added TestHandleIgnoreTerrainConsistency Covers both TerrainCollisionTrigger and WaterVisibilityTrigger. Tests: ran the new unit test, checked that all paths all covered.
32 Days Ago
Optim: GamePhysics.HandleIgnoreTerrain - replace const seting managed loop with a Burst job Saves 0.1ms on 10k test Tests: ran unit test
32 Days Ago
Optim: allocate smaller buffers for WaterCollision.GetIgnoreIndirect - Added a couple profiling scopes Tests: unit tests