6,813 Commits over 851 Days - 0.33cph!
Disable motion vectors for io arrows, fixes motion blur issues
Fixed shop marker cluster text scaling
Fixed input fields using decimal number content type not working
Matched new input system scroll speed to match the sensitivity of 10 we had in the old input system
merge from devtools_scaling_fixes
Copy paste list view fixes
Tweaked free aspect layout of item and vehicle tabs
Fixed F1 loadout tab scaling issues when using free aspect
Fixed copypaste grid button title text layout issues
Fixed F1 copy paste tab scaling issues when using free aspect
merge from iolines_shader_fix
Restored invisible wire material
Restored hose material colours
merge from iolines_shader_fix
Fixed remaining hose IO material still using the wire shader
merge from wallpaper_defaultskin_fix
Fixed wallpaper skin picker not showing the default skins, regression from last month
Russian roulette progress
Fixed FlexGraphicTransform messing with rust icon rendering after the TMP update
Fixed scroll speed issues
Russian roulette prototype wip
Removed a flaky raiding test
Removed entity id from TestScenario_FireRocketAtBase_CheckDamage error message, not needed and break the slack alert caching
Test list
Blocker evaluator micro optims
merge from rectmasks2d_optims
Commented UpdateClipSoftness, new feature we dont need. We have SoftMask
Clipping now takes 0.2ms a frame while sitting in the main menu, was ~9ms after the package update, 2ms on main (deep profiling editor)
Use GetInheritedAlpha on the canvas group chain to check if we should perform clipping
Most of our masks are invisible but not totally disabled because toggling gameobject is slow
Restored the hasMoved check in RectMask2D::PerformClipping, was removed by unity to fix pivot animation issue
We don't care about rect pivot animations, removing that check murdered UI clipping performance
IOCircuitSystem indentation fix
Allow root combiners to be connected to non root entities. Renamed it to 'combiner'
Prevent feedback loops by discarding power from back edge wires
Some fixes, refactoring and new evaluators. Cache consumption amount at register time so we don't rely on entities anymore
Fixed signs registering themselves in circuits
Started removing old IO code to IO entities code
Reduced the amount of flags OR AND and XOR switches are setting
Reduced the amount of TryGetComponentRecord calls
Circuit merge do not set the whole circuit as dirty + eval pass micro optims
No allocations when running the flood fill when rebuilding circuits
Updated all SimpleLight prefabs to use the HasPower flag instead of On
Simple light don't switch the ON flag anymore, we can just use HasPower and save a setflag when turning a light on/off (they're batched but that saves some overhead)
Added a max flag flip per tick per circuit budget too (too many flag changes can stall the client)
Circuit budgeting: all circuits share a 0.25ms budget per frame to evaluate. When the budget is depleted mid circuit, we save where we stopped and continue later. The starting circuit is never the same so a single circuit can't eat the whole budget and clog everything
Also moved the drain pass to the 1hz battery tick, it doesnt have to run on every tick
Optimised the evaluation pass. we now starts from the dirty components specifically instead of evaluating the entire circuit from start to finish
When evaluating, if a component output didnt change, we stop there
Ceiling lights just use the HasPower flag instead of On
More io entities using the new flag update
Auto turret is not sending full network update when turned on or off