123,375 Commits over 4,171 Days - 1.23cph!
Replace parallel for with normal for loops as it doesn't seem possible to completely get rid of their allocation (tried caching actions, extracting state, reimplementing with tasks, unitask, threadpool... those allocate less but still do)
Remove alloc in ExtractMesh
enabled shadows on sleeping bag model
rename and reorganise media
▋▄▋▆▌▍▄ ▉▊▊▅▌▊ ▋█ ▊▉▊▄▅ ▋▍▍ ▉▅▌▌ ▋▄▌▊▊▉▌▊▌
Add more media for exhibit pack
Check for storage adaptor too
subtract Attackheli_Buildvolume
129549
merge from string_light_batching_crash
merge from decor_lighting_dlc
merge from spotlight_research/Chandelier_power
Fixed incorrect pickup message
Fix wall cabinet being able to be picked up when locked
Fixed the ceiling light top bleed
Fixed secondary light being a different color
Removed distance flare (not used for player spawned stuff)
Slightly lowered LOD cull distances as they were carried from some static lights.
Small polish on light/shadow settings.
set fabric and leather beanbags to give same recycle output as chair
Turned shadow casting off floating walkway kits to improve perf
changed leather beanbag pickup from fabric to leather
Updated mannequin part paths
Fix label TC auth not working properly when the player has no building priv
Players parented to (riding) the hot air balloon will now be marked hostile for 60s when the hot air balloon crushes another player by landing on them.
This follows a similar setup to the modular car kill triggers in using the TriggerHurtNotChild script and IHurtTriggerUser interface to return the damage initiator player - the first player found is marked as the damage initiator and all other players are manually marked hostile.
- Tested in editor killing a spawned player whilst riding the hot air balloon and correctly being marked hostile
Merge: from baseplayer_serverupdateparallel
- Bugfix: PlayerCache can no longer desync when disabling UsePlayerUpdateJobs
- Optim: removed couple extra allocs in UsePlayerUpdateJobs 2
Tests: ran unit tests + bunch of disable-enable of UsePlayerUpdateJobs in local session
Bugfix: invalidate all non-null managed objects
- Previously it allowed for UnityNull objects to be skipped, leading to desync of StableObjectCache
Tests: ran PlayerCacheTests.StressTest - it now passes
Update: ammend PlayerCacheTests.StressTest to trigger cleanup causing desync with StableObjectCache
Tests: ran test, failing as expected
▊▍▆▍▅ ▍▉█▊ ▍▋▇▊▋▌_▊▇▌▋▉▇▅▌▌_█▍▊▄_▋▅▍▍_▆▊▌
Fixed clipping issue with life ring
Optim: UsePlayerUpdateJobs 2 - get rid of ExecutionContext copies when aggregating tasks in SendEntitySnapshots and -WithChildren
Tests: none, trivial change
Fix IsNavmeshBuilt returning true while navmesh is still async building
Add culling based on distance
Do not reset "stopAtDestination" when end of path reached, that defeats the purpose, as we want to keep moving even after reaching the end
small engine blockout for modular boats
Store start/end positions during jobs, add `laserbeam.useJobs` convar to allow for toggling the new jobified laser beams.
Optimise laser beams by moving them to jobs
Split dispatches per LOD, enable camera culling per cell, improve use of groupshared memory, enable renderer in editor, and add LOD distribution slider.