158,876 Commits over 4,566 Days - 1.45cph!
Dont send full network updates every tick for for animals without a look animator.
bears, polar bears, boars, chickens, crabs, frogs, jellyfish, squirrels, rabbits, stags
Worst offender is bear costing 94 bytes~ per update when roaming.
~550 B/s → ~27 B/s per bear per player while roaming
Restore update order just to be safe
merge from soundocclusion_optims
merge from scarecrow_errors_fix
Fix error spam from scarecrows
Fix bug that made scarecrows, gingerbread npcs, and junkpile scientists float slightly above the ground
Revert ProjectSettings.asset changes
material updates post shader changes
crowflock prefab uses single emitter now
Add particle stream toggle to crittermovement shader so mesh particles get a per-particle flap
Fixed sounds started by destroyed monument client entities when loading not being cleared correctly
Material fixes
Added test flock prefab
Fix gesture duration
Add more sound events for sheep foot stomp and cow head shake
Improve facing the player
Fix main menu not rendering sometimes
Another order fix/improvement
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
Gamepad building hints order optim fix
Scratch animation re-export at origin
pt_boat_target_fixes -> main
merge from pipe_mesh_optim
Fix bug causing PT boats to sometimes easily give up on targets up to 12 units above sea level. It should've been only 12 units below sea level
Hidden players rank behind every visible one, but can still be picked if nobody is visible
merge from pipe_mesh_optim
Reapply stomped code changes
Hook up petting react animations for cows and sheep
Add moo and baa sound events
Setup scratch gesture 1st / 3rd person (viewmodel doesnt work yet as it has an offset baked in)
▆ ▄▅▋▄▊ ▆▅▅█ ▅▄▉▆█▍▄▊▊▌█▌▄▌▇▊█▊▇▉▆▋
▋ ▋█▉ ▉▋▌▊▄▄ █▆ ▌▋▋ ▆▉▄▊▉▇▊ ▌▉▆ ▄▉▄▄▋ ▌█▍▌▊▌▉▄▌▊▄▇▌ ▅▊▄▆▉▋▋▅▍ ▍▆▋▅▍ ▍▆▉▅▋▉▆▅ ▄▇▍▅ ▍▋▉▅▍█▄ ▋▊ ▌▅▋▄▇▇ ▉▍▉▋▅▉▍▉▋▇█▇▋ ▉▍▊▋▇ █▌▍▉▋ ▍▋▋▇▆▄▄▋▅█▆▋▆█▊▋
moved pipe mesh generation to use the MeshData native interfaces, including port of tangent calculation
- virtually 0 main-thread cost now, almost all of the work is done on job threads
- All magazine drops now land on the ground for a little while
- Add some random angular velocity to the magazine as its removed. Ensures mags dont land bolt upright
merge from main, stomp branch changes in LivestockAnimal
Add SetVehicleLoad and slightly retune vehicle haptics while I'm at it
▇ ▍▋▌▊▌▅▉▅ █▇▇▌█▍▇▊▇▍ ▋▌▍ ▄▅▍ ▌▉█▇▅▆▉▅▆ ▆▄▉ █▍▇▍ ▉▆▍▍▋▉▉ █▆▋▄▇▅▍▇ ▍▉▌▌▆▋ ▅▍ ▆▋▅▉ ▅▍▋▆█▉▋
▆ ▋▍▍▌▇▇▉▊ ▄▇▅▄▇ ▅▌▄▌▋▅▇▍▇ ▋▉▇ ▅▍▆▍ ▋▉▉▅▌▌▅ ▊▆▄▌█▍█▌ ▅▅▉▄▋▆ ▆█ ▇▅▆█ ▅█▉▆█▆
More specific vehicle seat check for haptics
Rename some cursor/inventory UI options to be more clear.
Play pick/drop inventory sounds when using virtual gamepad selection
Swap the rest of the mag drops over to the same system as the glass ak
merge from bone_retarget_optim
Fix lasers being broken in first person
pre-initialize found bones array with the extra bones that have already been moved as part of DoBoneRetargeting to avoid pointlessly recursive searching for them
- much more impactful for things like hazmat skins that have a lot of extra bones for skirts
- ~0.3ms now for BoneRetarget
fixed missing upkeep component for triangle spiral stairs
Debug overlay only created on demand when gamepad_debug_overlay is true
Remove the cachedPostIK system - its not needed after spine IK has been moved into jobs
- Cleanup mag drops
Don't calculate/trigger haptics/rumble if gamepad not current input device