branchwiseguys/main/ServerPerformancecancel
26 Commits over 30 Days - 0.04cph!
Improve server performance by ~30% by having NetworkEntities use an Update call manager. See also: https://blogs.unity3d.com/2015/12/23/1k-update-calls/
Vehicles fully deactivate on server when stationary. ~15% less CPU usage on testmap_small.
Allow AI to path interior doors
Allow open/close of interior doors, even if you don't own the building. Only outer doors are unusable (when closed) now.
New door nav system taking advantace of NavMeshLinks to replace non-carving obstacles that were there before. Major performance improvement. Also fixed a bug with door interaction text when two players were interacting with the door at once.
Trying nav changes to improve door nav performance on servers. Doors using NavMeshLinks. Unfortunately NPCs can occasionally teleport through when they shouldn't.
Don't need connection check on door interaction. Fixes NPCs not being able to interact with doors anymore.
Merging in the latest from Main into my server performance branch
Major improvements to my CharacterState and InputMessage reuse code.
Fix input issue in CLIENT+SERVER mode
Minor edits. Rebuilt protobuf proj.
Turning interp clock debug off
Get variable interpolation clock to set a value earlier. Not a server perf fix, just less stuttering on clients with lots of lag
Merging the latest from Main
Fixing up a couple of other things that were borked in CLIENT+SERVER mode
Fixed CharacerState not repooling in Client+Server mode. This was an old issue that I only just discovered.
Added pool size checking (editor only) to make sure we can't break pooling without noticing.
Using pooling with InputMessage to save on a lot of garbage. Still testing this one.
Server garbage gen reduction
Killed all the garbage generation from NetworkStats. Keys were NetworkMessageTypes but enums cause boxing when doing comparisons, generating garbage. Switched to using ints which eliminates the garbage
Has to remove all WaitForEndOfFrame use on the server due to this regression bug in the latest Unity version breaking it when in batchmode: https://issuetracker.unity3d.com/issues/waitforendofframe-doesnt-execute-in-batchmode-on-built-project
Get rid of outline warnings
OUtlineEffect for client only. Fix NRE on built Server
Allow building debug server without building release version as well