Winter additions and a ton of mapping tools
Scene Mapping: Edge Cut
Scene Mapping: Fast Texture Tool
Scene Mapping: Polygon Tool
Scene Mapping: Resize Mode
Scene Mapping: Material Palettes
Scene Mapping: Merge meshes operation
UI: Allow scss variables to be used in `@keyframes`
Networking: Added callbacks to NetList and NetDictionary when entries are added/removed
Shaders: Added g_vSelfIllumOffset for scrolling self illumination texture
NavMesh: Collision Rules to NavMeshAgent Ground Trace
Shutdown scene early (#3576)
Brush settings control widgets (#3598)
popup/dropdown stylesheets
Add formatting to indicate state of sound preview toggle buttons @boxrocket6803
Reset Game.IsPaused when the scene is stopped. Tint pause button blue when the game is paused @Matt9440
Call SceneLoaded listeners for clients @andy013
Do not focus LastSelected when switching tools @aidencurtis
Crash: When writing descriptor sets, some buffers could become freed whilst in use
Terrain: Create buffers early to avoid rendering unbound leading to a potential crash
Terrain: Brush preview follows cursor when held down
Map.CreateAsync not working properly because of a missing ServiceWorldRequests
Sandbox.Compiler.config not being initialized by default
Nametags showing above menu for humans on main menu
Editor: Orbit Camera
Editor: Preferences keybind modifier
DropDown control struggling with empty/null values
exceptions in ParticleModelEmitter when model is null
Make sure MovieResource.EditorData is set when saving
Prevent INetworkListener OnDisconnected being called on clients @andy013
package visibility overlay @Drakefruit
overload of Gizmo.Draw.Model @Nolankicks
DebugOverlay.Text being culled when looking away from the scene origin @andy013
GameObjects in GameObjectSystem NetLists being null on clients @andy013
UI not being resized to screenshot_highres dimensions, contributed by @trende
I hope that you'll be successful at achieving stability with the new light baking and other improvements.
See you in the upcoming year!
I assume it's weird because you're doing remote calls. You might want to see if you can wire up .NET events directly, would be nicer looking and more intuitive to .NET developers. But I don't know what your system looks like, that might be more trouble than it's worth, or even undesirable.
Merry Christmas and a Happy New Year! Wishing the entire Facepunch team a wonderful and restful break. See you in January! 🎄