userDaniel Pcancel
reporust_rebootcancel

2,911 Commits over 730 Days - 0.17cph!

54 Minutes Ago
Merge: from remove_jobs2 - Removal of UsePlayerUpdateJobs 2 supporting code, setting it lower will run at least mode 3 - Bugfix for potentially invalid buffer usage when fetching WaterInfos - Moved more BasePlayer state to NativeArrays Tests: ran unit tests, ran around on craggy
1 Hour Ago
Update: Codegen Tests: compiles
1 Hour Ago
Clean: pass around ReadOnly instead of mutable collection where possible Tests: compiles
1 Hour Ago
Merge: from main
1 Hour Ago
Bugfix(tests): make sure PerfIsNoClipping properly cleans up spawned gameobjects - also cleaned up some leftover deltaTime arrays in tests This was messing up tests further in the queue Tests: ran AH perf and unit tests
Today
Bugfix: fix out of bounds write Tests: ran unit test combination that previously failed - now passes
Today
Clean: remove AntiHack.DeltaTimes persistent buffer Was used to cache tick times, but now we cache it in PlayerStates Tests: ran AH perf and unit tests - stumbled on an unrelated(I think? suspicious) bug
Today
Update: move tickDeltaTime and tickNeedsFinalizing into it's own state arrays Cleans a stale TODO Tests: booted craggy and ran around
Today
Bugfix(tests): remove test assertion that can sporadically fail Since we run some checks in parallel, some state results are unreliable Tests: ran unit tests as a batch and each in isolation
Today
Bugfix(tests): ensure env volumes get cleaned between TestIsFlyingConsistency runs Found a test that fails when run in isolation Tests: ran unit tests
Today
Bugfix(tests): use test state caches for PlayerState Fixes failures from previous change. Spotted a bug that should cause a failure, yet it passes somehow - will investigate next Tests: ran AH perf and unit tests
Today
Update: move generic AH state from BasePlayer to AH.PlayerState struct Tests: ran AH tests, perf tests failing (will fix next)
Today
Bugfix: add missing reset call for noclip states - also minor refactor Tests: ran unit tests
Yesterday
Clean: minor refactor - remove dead prop - wrap unparentTime in prep for moving to it's own state array Tests: compiles
Yesterday
Bugfix(tests): use passed in array instead of global static when checking overlap with player Same bug as before but on a batched path - guess I was sleep deprived yesterday. Tests: ran all AH perf and unit tests - they pass
Yesterday
Bugfix(tests): use correct array when checking overlap with other player Fixes PerfIsFlying tests, gotta fix the batched now Tests: ran perf + unit tests
Yesterday
Clean: move noclip state from BasePlayer to AntiHack.PlayerNoclipState Tests: ran all AH tests, unit tests pass but perf tests fail (for flying checks, will fix next)
Yesterday
Clean: move IsNoClipping code to unit tests Tests: compiles
Yesterday
Update: ensure PlayerPos/LocalPos/Rot/... caches are initialized to accurate values when player connects Tests: none, trivial change
Yesterday
Clean: minor refactors - codegen Tests: none, trivial changes
Yesterday
Clean: remove last Jobs 2 code and branches Tests: compiles
Yesterday
Clean: remove all speed and flyhack state fields on BasePlayer, rely on AH counterparts Tests: ran unit tests
Yesterday
Clean: use AH states in unit test logic Eliminates a chunk of BasePlayer AH field usage, can remove them next Tests: ran unit tests
Yesterday
Clean: rewrite internal unit test methods to use PlayerServerState struct Done in prep to switch to custom AH states from Jobs 3 Tests: ran unit tests
Yesterday
Clean: got rid of Jobs 2 branches in AntiHack code - also moved serial IsSpeeding and IsFlying from AntiHack to Test.AntiHackTestsSetup Keeping them so that we can still use those to validate batched logic Tests: ran unit tests
Yesterday
Clean: remove BasePlayer.UpdateSubscriptions, it was only used in unit tests - fix TestPlayer.UpdateSubscriptionsConsistency unit test Tests: ran unit test
Yesterday
Clean: initial pass of removal Jobs 2 code - removed hand-rolled async state machines - removed all code dependent on !UseUniTasks Tests: compiles
Yesterday
Merge: from culling_falsepos_improve - Update: restore culling.debugshowstats functionality Tests: built debug client standalone, used the command in editor
Yesterday
Update: replace editor GUIStyle with default one to allow culling.debugshowstats to work - remove UNITY_EDITOR defines Tests: built debug client standalone
3 Days Ago
Bugfix: ignore set calls if occlusionculling instance hasn't been created yet Tests: compiles
3 Days Ago
Merge: from culling_falsepos_improv - Bugfix for NRE blocking connection to the server Tests: none, trivial change
3 Days Ago
Merge: from culling_falsepos_improv - Update(debug): added a bunch of editor only debug tools to be available in standalone, in culling clientvar group - Update(debug): improved output of some of these tools Tests: used these tools on craggy and apartment
3 Days Ago
Merge: from main
3 Days Ago
Update: expose more of culling debug tools - DebugShowStats - same as PrintStats, but continuously rendered to screen - DebugDrawHiZMipChain - draw all depth mip levels on screen - DebugDrawHiZOverlay - overlay specific level of mipchain on the screen, -1 to disable Tests: used all on craggy
6 Days Ago
Bugfix: ensure rendering camera is facing same direction as apt cctv camera Tests: rented 602, looked into it - more stuff rendered
6 Days Ago
Merge: from main
6 Days Ago
Clean: get rid of OcclusionCulling.DebugFilter We already had DebugMask that represented exactly the same Tests: compiles
6 Days Ago
Update: expose more of OcclusionCulling debug - got rid of original culling.debug clientvar (superseded by debugmask which accepts a bitmask value) - added debugscreenbounds (shows screenspace bounds + resolved LOD of hiz chain) - added printstats Most of this was available in the editor, should make it easier to sus out the specific conditions of bugs Tests: used all on craggy
6 Days Ago
Update: add debugshowoccluderid to help with filtering to specific occluder Tests: used on Craggy to look at boxes
6 Days Ago
Update: couple more debug features for OcclusionCulling debug DebugLookingAt will try to resolve LODComponent (but our entity hierarchies are wild, so it fails frequently), DebugRange limits which occluders are debugged Tests: used both to target props on Craggy
7 Days Ago
Update(debug): allow to filter occlusion culling debug to just 1 specific instance via culling.debugid - added editor only way to copy id (need a way to do this in standalone) Tests: used it to isolate apartment corridor wall (still pants to use though, need something better)
7 Days Ago
Update(editor): occlusion hiz overlay - "auto-expose" depth overlay Original implementation made it very difficult to discern anything in enclosed spaces Tests: used it in apartments
7 Days Ago
Update(editor): use same color for lod level of occludee when rendering ss bounds - also added memoization of lod level Tests: none, trivial change
7 Days Ago
Update(editor): use different colors for visualizing occluidee screen-space bounds Red for dynamics, cyan for statics, purple for grid Tests: visualized swing - saw all 3 colors
7 Days Ago
Bugfix(editor): fix dynamic occludees rendering sphere in LS, instead of WS - use cached location to help detect slow updates to dynamic occludees Tests: visualized bounds of swing seats - they're no longer at origin
7 Days Ago
Merge: from main
7 Days Ago
Remerge of before due to submit race
7 Days Ago
Merge: from renderbatch_meshlod_improv - Update: reimplementation of previous bugfix to be cheaper Tests: pasted a boat, flew out and back - props were there
7 Days Ago
Optim: simplify prev bugfix, don't early initialize LOD managers Tests: pasted a boat, flew out and back - props were there
7 Days Ago
Bugfix: from renderbatch_meshlod_improv - Bugfix for disappearing props on boats Tests: paste a boat, flew out of range and back - all props present