branchrust_reboot/main/useplayertasks_removegroupocludee_nrecancel

3 Commits over 0 Days - ∞cph!

3 Hours Ago
Bugfix: when player disconnects, ensure we destroy relevant occlusion groups - destroy local group if no local participants present - remove destroyed participant from other occlusion group member's groups Tests: 2p on Craggy in different cells - get 2nd player to disconnect, then kill sleepers. 1st player walks into the cell - no more NREs. Ran usual occlusion checks (fly away and back, hide behind terrain)
Today
Optim: use pooling for occlusion groups - prealloc 2k groups in the pool (1 per player and sleeper) Tests: 2p on Craggy - nocliping across various grid cells and checking print_memory stats
Today
Optim: ServerOcclsuion - rewrite how we track occlusion groups - also fixes server occlusion bug which sends out more snapshots than necessary Previously every network group in subscription range of player would create an occlusion group. Now, only occlusion-enabled entities populate their local cells (and their subscriber's local cells) - se get activeplayer+sleepers count max of occlusion groups. Tests: both in UsePlayerUpdateJobs 0 and 2, 2 players on Craggy - ran around across network cells, flew outside of network range, used minicopter to fly into network range, checked sleeper is visible, checked kills clean up internal state. Player got occluded over terrain.