10,948 Commits over 1,950 Days - 0.23cph!
Fixed collapse not working with skinned objects, not casting shadows
Various fixes, move to PrefabPreProcess so it gets run once per prefab
Added egress state to debug_cargo_state
debug_cargo_status and debug_info no longer need to be called from in-game
Two cargo ship movement fixes:
-Fix the cargo ship no longer being able to egress if it was saved/loaded while egressing (it's possible this has never worked). It would just keep sailing away forever (and start venturing into NaN positions).
-Fix a case where the cargo ship would not be able to rotate to face it's desired waypoint if it spawned facing perfectly away from the waypoint. The cargo ship rotation logic would not work if the ship was facing the completely opposite direction, it now receives a bit of a nudge if this ever happens to ensure it can start to rotate. This would have likely caused newly created cargo ships to rarely get stuck at their spawn point.
More memory optimisations - attempting to reduce the number of transforms/gameobjects/renderer components there are in the world by consolidating them into a single RendererLOD when possible
eg. a RendererLOD has three child LODs all at 0,0,0 - this process caches the mesh and materials used at each LOD level and creates a new renderer/filter on the RendererLOD root and switches the mesh and materials when adjusting LODs. This allows us to delete the child transforms entirely.
Process is entirely automatic and applied at runtime to all RendererLODs so no change to artist workflow.
Some initial results:
Launch site goes from 30,409 transforms to 21,131
Outpost goes from 11,850 -> 9,633
Harbor_1 goes from 17,233 -> 13,125
That's a total saving of over 15k transforms, renderers, filters just from three monuments!
Fixed manifest not being included, still not loading
New attempt - load all preprocessed prefabs into a dedicated client/server scene and include that in the build
Created new FileSystem backend that is mostly working, builds are done via Builds/PreProcess/ menu
More build cleanup, not much progress
New idea: what if we saved preprocessed versions of all of our prefabs outside of the assets folder?
Finally got a maybe working bundle out of this, still way too slow
Turn off root motion on viewmodel camera animator
Fix missions UI always appearing when a player connects to a server with BaseMission.missionsenabled set to false
Add support for the new has ammo layer on newer viewmodels to the Viewmodels test scene
Rename legacy animator field
Add admire support to the Viewmodels scene
Remove admire->idle transition
Add ViewmodelCameraAnimationSync component to sync the camera anim to the regular viewmodel anim
Setup on p17
Better parameters in FindAssets method, fix compile errors after merge
Merge from main (reviving this for hackweek)
▉▉▇▄ ▇▊█▇▆▄▍▇▄ ▋▄▇▆▇ ▍▉▌ ▍▆ ▉▊▌▊▍▊▊ ▍█▌▅ ▅▅▌▌▌█▌▄█▍▌▉▄▌▍▄▌▇▌█▄▊▇, ▌█▉▄▉ ▊▉▄ █ ▉▍▉▌▉█
▄▆▊ ▌▌▌▄▌▅.▋▆▉▇▆▇▋▌▋▍▅▋▊▄▅▉▅▋▇▇▌▊▆█ ▅▌▅▍▅▋ ▍▄ ▋▍▌▇▊▋▌ ▌▌▋ ▍▅▆▌▇ ▆▉▇▊ ▄▋█▆▄▍▅▆▇, ▅▋▊▄▄▄ ▄▋ ▆▌▌█▍█ █▅ ▊▅▅▇█▍█▌▄ ▌▇▆▊▋▇
▍▊▆█ ▍▄▅▌▌▍▋▄▍▅ ▍█▍▉▌▇ █▅▊ █▇▍▄▄ ▌▆▌▊ - ▊▄▅▄▇▋ ▇▋'▉▅ ▋▊▆ ▍▄▌▊▊█▄▊▌█▌▍ ▌▄▄ ▍▄▍▊ ▄▄▇▍ ▄▌▅▆▅▅ ▌▆█ ▄▅█▌▆█ ▅▋▌▄ ▋▊▇ ▅▉▊ ▆▋█▅▅ ▉▆▉ ▅▋▋ ▉▆▌▉
Use RaycastCommands for LaserBeams as well, turns cost of laser beam updates from 0.2ms to 0.1ms in outpost
First pass on moving the sound occlusion system into jobs now that we're on an updated version of unity
Keeps the frequency the same but moves all raycasts into RaycastCommands with a max of 10 hits
Can be toggled on and off at runtime via SoundOcclusion.useThreadedCommands convar
Fix junkpile_water_b and c getting their colliders stripped on the server, leading to items falling through the junkpile
Fix junkpile_water_a not properly removing components (this one already worked ok as far as dropping items)
Delete the sks item skin asset, prevents it from being crafted as a SAR skin
Update skin list
WIP sending a special death info to the player when they die due to sleeping in a safe zone
Hide the health bar of the entity the player is looking at while in ADS and the hide interact text while aiming option is set to true
Also optimised the health bar update method to remove an 80b/frame allocation and a 90b/frame allocation when looking at a building block (regardless of the ADS setting)
Send the cargo ship patrol path to the player, render it on the map
Better fix, roll the ladder root into the same entity flag toggle as the netting as we want to show them together
S2P harbor_1
Move the ladder on the rotating crane into a new root and toggle it via an entity flag toggle so it's only visible on the crane on the shore side
Added a new CanvasLineRenderer component that draws a line into canvas space given a series of positions. Supports a tiling UV and tesselation in the corners to smooth things out
One more tweak, align both condensed and normal versions with the same right offset on the amount text so we can maximise the size of the font
Use the condensed item pickup notice when displaying a pickup greater than the stack size of the item
Condensed item pickup notice amount text so it's more legible
Removed the parenting volume on the crane pickup piece, it would work when the crane rotates but not when it extends/retracts as our parenting system has no awareness of that movement
Fixed another case where the attachment collider wouldn't match between client/server, leading to flyhacks
Fixed a slight offset on the harbor crane pickup attachment that could maybe lead to flyhack kicks while standing on it
Added a parenting volume to this section so if the player is standing on it while it moves they should move as expected with it
Will need harbor S2P's for this to work properly
Fixed some edge cases where the planner was unclear if you could place an external structure if you had just slid down a surface
Fixed incorrect ShowBullet reload animation event configuration
Update harbor_crane_a to fix missing meshes
Fixed missing ShowBullet animation events
Fixed the new camera animation system on the minigun/flamethrower/sks not respecting the head bob client setting