userFlaviencancel

8,179 Commits over 1,004 Days - 0.34cph!

10 Days Ago
Stop HideIfAiming deactivating the muzzle flash once its particles finish. Every reused attack effect had to reactivate it Was spiking up to ~5-7ms in a build and only 0.2ms in editor somehow, now 0 It points at ParticleSystemRenderer::UpdateCachedMesh, checking that next
10 Days Ago
Keep sound template AudioSources enabled while pooled, disabling them on every recycle flushed unity's audio DSP, stalling up to ~1ms when a sound got cut mid play RecycleSound in editor: ~0.45ms -> ~0.25ms The occasional 1ms "flush dsp connections" is gone
10 Days Ago
Fixed quick craft spending ~1.6ms rebuilding after almost every shot (inventory update) Only rebuilds when the inventory is open now
10 Days Ago
Pool 3 copies of thrown melee weapon and tool projectiles instead of 100. No point in filling our pool with 3900 copies you'll rarely see more than 3 of at the same time Saves around 50MB of memory and gives me some leeway to eat that with gun effects next
10 Days Ago
Prewarm 5 copies of each ricochet effect instead of 1, first magazine dumped after connecting created up to 2 more per prefab at ~0.5ms each
10 Days Ago
Create the pools LaunchProjectileClientside uses at bootstrap instead of on the first shot, avoids a ~365KB alloc when the first projectile of the session is fired
10 Days Ago
Compile fix, missed a file..
10 Days Ago
Fixed 150531 not working in builds (Mega hack to bypass the PlayerUpdateCanvases call when unity renders the realtime cubemap, saving some time wasted on UI for nothing)
10 Days Ago
merge from cubemap_ui_optims2
10 Days Ago
merge from soundocclusion_optims
10 Days Ago
Revert ProjectSettings.asset changes
10 Days Ago
Fixed sounds started by destroyed monument client entities when loading not being cleared correctly
10 Days Ago
Sound occlusion optims: - stop checking every wall between a sound and the camera once one wall muffles it - looping sounds occlusion rays are batched - virtualised sounds (sounds muted by unity) check occlusion every 1s instead of 0.25s Standing outside an average base with 40 looping sounds in range: ~0.65ms -> ~0.05 ms per frame
10 Days Ago
merge from railcolliders_optim
10 Days Ago
Rail segments now cook their collider mesh in a job instead of on the main thread 5.2ms -> 0.03ms on the main thread per segment
10 Days Ago
merge from buildingprivilege_cache
10 Days Ago
Comment
10 Days Ago
Fixed regression with player boat privs when using the cache
10 Days Ago
Cleaned up building priv cache vs vis tests
11 Days Ago
merge from buildingprivilege_cache
11 Days Ago
Cleanup
11 Days Ago
Reordered the check so bases with no TC are cheaper
11 Days Ago
Convared the vehicle and entity privilege changes under buildingmanager.privilegecache
11 Days Ago
Building privilege tests
11 Days Ago
Legacy shelters, vehicles and boat building stations no longer use Vis queries Same base same spot: GetVehicleBuildingPrivilege 0.34ms -> 0.01ms GetEntityBuildingPrivilege 0.84ms -> ~0
11 Days Ago
Sort the cells oldest first
11 Days Ago
Store each blocks bound centre and net id in the grid so: - blocks out of the query radius are skipped without a dictionary lookup - the age check doesnt read every block from memory Only run HasColliderWithinSphere when the block bounds aren't entirely inside the search sphere Around 0.09ms for GetBuildingPrivilege in that same base, same spot
11 Days Ago
- Skip the bounds check for blocks that aren't older than the current best block - Visit the cell you're standing in first Skips a lot of work when standing in the core or middle of a base
11 Days Ago
Attempt at global building privilege cache, using a simple grid holding all the building blocks + a collider test on the winning block, because triangles and roofs have bounds larger than their colliders Thats enough to remove the Vis Entities call and keep the same precision. Works on the client and the server In a big base, 575 blocks around me: 4.60ms -> ~0.50ms
12 Days Ago
Added alien costume to the skin viewer
12 Days Ago
merge from Halloween2026DLC
12 Days Ago
▉▍▍█▍▍ ▊▉▊▍▄▋ ▋▍▌▍▉▌ ▄▍ ▉▄▄ ▅▅▌▉ ▌▉▉▋█▊
12 Days Ago
▇▉▇▋▇▄ ▄█▋▍ ▆█▆▋▆▍▅▌▌▌█▅▋▇▇▊▊▌
13 Days Ago
Building privilege debug draw convar
13 Days Ago
▅▉▌▉▄▌ ▌▍▊▉█▉█ ▅█▊ ▍▄▄█▇▊▍▅▊▆▅ ▅▌▅▅▄▅▌▋ ▌▋▆▋▇▊▊█▆ ▊▇▇▌▍ ▊▋▉▋▇▊ █▉ ▋▍ ▋▋▋▄█▇█▇▉█▊▌▊▆▊▋ ▋▆ ▋▉▆▌ ▆▅▅ ▇▉▆ ▋▆▆▇▄▇▍ ▊▍▉▍ ▌▅▍▋▇▇▌▅ ▆▅▊▍▆ ▋▆▊▌█▉▍ ▄ ▌▆▉▇▆▇ ▋▇▇▄▌▅▆ ▌ ▇▇▄▍▋▇▆▆▄ ▅▆▍▉ ▌▊ ▄▆▇ ▊▍▄▍ ██ ▅▄▄ ▋▍▅▌▌▄▌▌▇▋▉▋ ▉▋▉▅▇▅▆ ▋▍ ▊▆▌██▆▌ █▌ ▊▋ ▋▆▉▇▍▇█▌▊▍ ▇▆▊▉▅▅█▋▄ ▆▌▆▄▄▋▆▇ ▇▌▄█ █▅ ▋▄▆▆ ▆▅▄▋█▅ ▄▇▍ ▅▍▇▅█▋ ▌█▍█▆█ ▉▊▄ ▄▄▉█▌▅▍█▌▌▆▉▍ ▉█▄▄▊▋▅▇ ▄▊ ▊▋▊▊▌▊▄ ▋▊ █▄▊ ▇▉▉█▋▅█ █▆▅▅▌▌█▇▆▋
13 Days Ago
▅█▅▄▅ ▊▉▅▅ ▊▌▍ ▉█▉ ▉▍▊▌▊▉▅█▇▆▆▅▌█ ▋▅▊▄ ▍▌▄▋▆ ▌▆▅▄▊█▌▄▍ ▇▊▍▉▌▊ █▆ ▍▄▌▌ ▌▉ ▊▊█ █▅▌▊▊▉ ▌▊▌▉██▉ ▍█ ▅▇▋▆▉ ▅▇▍▊ ▋▍ ▄▌ █▍▋█▇▅ ▄▋▅▇▋
13 Days Ago
▄▌▋▊▆▍▊▅ ▍▌ ▇▇▅█▅ ▇▅█ ▋▌▆▊▅▊▄▄█▊▍▅█▅▆▌▅▍▄▍▉▅▊██▆▌▆ ▆▇█▊▇▍▆▄ ▌█▋▅▊▆█▄ ▆▌█ ▆▅▆ ▆▆▆ ▆▍▊▆▋ ▅▌▋▋ ▋▄ ▅▆▌ ▉▌▆▄ ▋▅▍▇ ▆▊▉▆ ▊▋ ▉▅▄▄▆ █▅▍▉▋▄▆ ▌▇▌▉█ ▌▍▄▍ ▇▌▆█▄▇▌▊▄▊ ▉▉ ▄ ▅▉▊▄▍▌▊▉ ▆█ ▍▉▇▉█▋ ▆▋ ▇▊▌▆▆▋▉▆ ▄▆▆▉▄▉▋▌▅▆▌█ ▍ ▄▇▇ ▄▇▆▍▋ ▋ █▍▌▍▅▌ ▆▍▇▍█▋▋ █ ▆▋██▋ ██▅▌▌▌ ▆▆█ ▆▌▉▊▉▇▌▇▋ ▅▇▌ ▉▆▍▍▍▆ ▇▌▅▇ ▍▌▆ ▆▇▆▄▄▅▍▊▋▋█▇▋▅█▊▍▍▆▄ ▍▍▆▆▍ ▌▊▌█▇ ▍▌▋█▇ ▄▉▆ ▋▄█▆▌ ▉█▉▆ ▄▍▆ ▆▇▋▋ ▆▇▅▄▅ ▆█ ▄▅█▌
13 Days Ago
merge from automated_testing
13 Days Ago
Building privilege notices client tests
13 Days Ago
merge from main
13 Days Ago
merge from buildingpriv_vitals_optims
13 Days Ago
Renamed the invoke UpdateLighting -> UpdateRgbLighting, was confusing when looking at the profiler
13 Days Ago
RgbEffects no longer looks up building privilege when no SteelSeries or Razer device is connected Its now also using the ignorePosition cache lookup, so it no longer fires 10 times a second while moving
13 Days Ago
Fixed vitals calling GetBuildingPrivilege ~24 times a second when walking around in a base Added an ignorePosition param for Privilege.IsCacheValid, now used by the client vitals Was taking up the 6.5ms a frame in a big base, now back to one call per second
14 Days Ago
Stop LOD components registering with occlusion culling while its off Occlusion culling never runs under RRP, but moving LODs still pushed their bounds every frame into a list that never got cleared Was ~0.5ms a frame on dynamic occludee for nothing too on average
14 Days Ago
merge from occlusionculling_leak_fix
14 Days Ago
merge from rain_optims
14 Days Ago
Optimized rain particles - rain patches now use a closest hit sphere cast instead of GamePhysics.Trace, it collected every colliders down a 1km column to keep only the top one - a patch only casts again when it moves - coming back from an alt tab doesnt fire 64 casts in the same frame - fixed rain falling under some roofs Editor profiling raining at missile silo, average per frame: 0.42ms -> 0.06ms standing, 0.11ms running, 0.14ms at 20m/s Applies to snow too
14 Days Ago
Fixed misconfigured raiding tests failing after the triangle splash bug fix
14 Days Ago
merge from animalfootsteps_optims