128,323 Commits over 4,201 Days - 1.27cph!
Merge from chippy_optimize
Don't render chippy arcade machine if player isn't in front of the machine (lol)
Don't render chippy arcade machine if player is mounted to another arcade machine
Don't render if the chippy game is on the main menu and we've already rendered a frame (since nothing is going to change)
Disable canvas of chippy arcade machine if player isn't in range for the canvas to have anything on it
Replace LOD1+2 of arcade machine with non skinned meshes, allows them to be batched
Replaced some GetComponents on the server with casts since we already have access to the entity, should be a mild server side saving
Gains about 30fps when standing infront of a group of 60 arcade machines
merge from main -> qol_dump_improvments
merge from fix_blueprint_itemid -> main
Revert advanced BP fragment to old item id and apply FreezeItemid label
Prevent ItemDefinition from recaulating it's ItemId if the asset has the `FreezeItemId` label
- exposing as label instead of bool so people don't actively use this hack
Number of improvements to the dump command
- TLDR sometimes the scene files were correct, sometimes the overall information was correct, now scenes & overall information should be correct
- create a dump for the "DontDestroyOnLoad" scene (it's not really a scene but contains all our PrefabWarmup components)
- for certain dump text files, create separate files for active vs inactive objects
- fix only dumping the active roots and not all roots, active & inactive
Swap TerrainConfig to tropical when in deep sea, fixes snowy tropical beaches
Swapped windmills from skinned mesh renderers to regular mesh renderers.
With 50 windmills (high end, all around the same lod):
- saving .15 on UpdateAllSkinnedMeshes
- saving ,15 on MeshSkinning.Update
- Saving .12 on Animators.Update
- Saving .10 on DirectionUpdateAnimationBegin/End
- saving 0.07 on camera rendering
Merge from slots_optimize
Update caboose versions of slot machine
Delete 6 meshes that are no longer needed, about a mb worth
merge from fix_chat_message_logs -> main
▅▌█▇▄ ▍▇▋▄ ▇▇▍▆▉▍▇▌█_▇▆▋▌▄▄▉▍_▇▄▉
Make the slot machine and storage entity poolable, entering range of a slot machine that has already been pooled now takes 0.13ms and allocates 384b (was over 2ms)
Try to fix linux compile error again
▉▍▇▊▊ ▇▍▆▊▅▅▊ ▅▍▌ █▊▊▆▅▇▄▉▄ ▆▍▌▆▋▍▄ ▌▅▍▉▌▊▉ █▍ █▋▌█▅, ▅▍▉▆█▇ ▉▍ ▉▉█ █▇█▊▉▋ █▋▅▇█▅▇ ▄▌ ▄▅ ▇▊▉▆▄▌▅▄ ▇▍▆ ▊█▌▉█ ▄▇▇ ▅▋█▊▇ ▅▆ ▋▊▋▅▆ ▊ ▆▇▊▍▍▆▇█▆ ▊▆▋▅▄ ▊▉ ▍▋▆▊█▍█▍▍▆▅▌▅█▆▅▋▊▇. ▄▅ ▊█▌ ▄▍▌ ▅▆ ▌-▅▄▉▆ ▋▍ ▌▉▅▇▍▋▍ ▋▄▉ ▆▌▇ ▄▄▉ ▊▊▇▆▇█ ▊▉▄▇▋▄▅▄▆ ▌▊▆▇ ▆█▄▄█▊▋▋█▊ ▄▋▅▌▉ ▇▍▌ █-▊█▌▉
▇▊▄▌ ▉▄▇█▅ ▄▊ ▋▄▊▉▌ ▉▉▊▅▍▄▉▉▆▉ ▊▆▍▅▊▌ ▇▍▋ ██▌▅ ▋▅▆▌▋█▅
MeshCull the black out box
Keep aim dir on cannons local whenever they're parented(to a boat), change all of the writes to aim dir to assume the same.
merge from ui_overhead_optims
Fixed chat and sleeping bag clusters texts appearing blurry
Cannon FX restoration.
Nested them as standalone prefabs.
merge from ui_overhead_optims
Added hierarchy path for non menu, game or engine UI in printCanvases command. Easier to spot canvases from entities
Fixed F1 tools tab hud toggles not initializing correctly following
133710, causing half of the hud to disappear when opened
A whole marathon of Indirect Instancing changes:
- Schedule all jobs at the beginning of LateUpdate() for better worker utilisation.
- Further improve scheduling behavior by modeling actual dependencies between jobs using writes_to_* and reads_from_* handles.
- Allow instance reordering and command aggregation to run in paralell to give even more flexibility to the scheduler.
- Run the debug overlay (where possible) in parallel with the jobs to improve performance
- Avoid garbage allocation when scheduling the frustum culling job. (GeometryUtility.CalculateFrustumPlanes)
- Schedule all jobs using ScheduleByRef.
- Correctly set `[ReadOnly]` and `readonly` for all jobs to help Burst as much as possible.
- Make batch size tunable: `indirect_instancing.batches_per_worker`
- Add somewhat automatic instrumentation to CrudeProfiler via `using` statements.
- Add ProfilerMarker to mimic what Unity 6 is doing with `using` statements. (Still need to verify it this compiles out properly.)
- Add more profiler instrumentation.
- Rename a ton of things for clarity.
- Remove CommandBuffer. We won't need it where we're going.
Slot machine optimisation pass - halved the file size of the prefab, removed all skinned renderers
Removed all allocations from client side invokes
Don't spawn the payout UI elements until the player is with 15m (when the canvas would enable)
merge from fix_chat_messages_logs -> main
Fix compile error on linux server build
Fix chat messages not being logged to the logfile, only to the server console
merge from main (using main version of all the prefabs changed by a manifest update in naval)
merge from update_manifest_oct_25 -> main
Fixed farm barge NPC opening door too early
Prefab changes after generating manifest
merge from ui_overhead_optimms
Merge from floating_cities
Delete client_modding ophaned prefab to fix GenerateManifest() throwing exception
Fixed hudcomponent command messing with all these optims, we now toggle gameobjects only and keep the canvases untouched
Crosshair disables its canvas when hidden
Now disable their canvas when invisible:
Rock paper scissors
Camera overlay
Scope overlay
Fixed blackout overlays not turning off completely