Crash Reporter is now a C# app, and calls to our API
Multi-viewport in play mode
Update meshoptimizer to v1
Make MSAA setting work on editor SceneRenderingWidgets
enforce gameobject order and form groups whilst duplicating @johncosfm
Various crash fixes when shutting down engine
unfuck the ordering of rebuilding in mesh component so mesh is built before collider, also don't use gameobject scale to scale geometry
suspension disabled just limits the suspension to zero internally so it doesn't fly off into space, also set suspension and steering spring defaults to 10 hertz, 1 damping
🪛 Fixed
Don't double present the game in editor, which was incrementing completed frames too far and freeing used resources too early
Avoid doing LoadAllGameResource multiple times on editor startup (and before we've setup some search paths)
AgX tonemapping being washed out
Networking: Performance Regression
DebugOverlay.Text not rendering @andy013
Mesh Tool - Shortcut Fixes
Cache (De)SerializeOptions in hot paths
Check if native SteamUser is valid before trying to access it
Fix clamped does nothing @766974616c79
Fixed additive scenes (such as the system scene) applying its NavMesh properties on the main scene
ProjectSettingsInspector now opens a single popup when forcing the Inspector
Materials & models store their referenced cloud packages
Only group selection for convert to prefab if it has more than one element
Re-initialize the editor camera whenever a new scene is loaded in a SceneViewportWidget
Bias nav agent ground detection to prefer bottom trace
BaseFileSystem creates the directory structure when writing a file
TextEntry is :empty when it has no value set
🪛 Fixed
Tool materials used by Hammer/ModelDoc not rendering properly due to dynamic expression reliance
Crash when attempting to duplicate a scene root
Crash when trying to mix an invalid sound handle
Crash when GenerateMipmaps was used from multiple threads
Whitelist errors when verifying multiple assemblies at once
High Acceleration NavMeshAgent Getting Stuck on Edges
Restore IPressable.StartPressing behaviour so it can work with GetUsableComponent again
Restore Eye Dropper for InterfaceControlWidget
Load NRE when EditorOnly flag is set on a prefab root
"Merge Edges" not undoing to it's original state properly
MeshComponent's SceneObject being rebuilt whilst disabled
Modelphysics trying to drive physics from animation when motion is still enabled, we only want to apply this feature if the modelphysics is in kinematic mode
Sandbox.Mounting.ResourceFlags not actually being flags
Fixed held down keys repeating when input goes into UI mode instead of ignoring until up
Fix ColorAdjustments PP running in the wrong place
🚯 Removed
Obsolete NavMeshArea.LinkedCollider use SceneVolumes instead
Materials made with shaders created with ShaderGraph will automatically populate any textures used in samplers instead of the color white.
Made SceneViewportWidget editor shortcuts consistent with one-another so they need viewport focus.
Pressing a ViewportTools-related editor shortcut will update the related button visually without having to hover/click it.
Added missing XML summaries to TextRenderer.
Added missing XML summaries to ImageFileGenerator and re-categorized properties
Removed "Null or empty audio data" warning.
Physics: Box3D now uses the thread pool improving
Stepped increments with new [Step] attribute (or previous [Range] attribute uses) now work without the need for a slider
Inspector handles inspecting [ null ] better instead of erroring
Allow suppressing SB3000 with [SkipHotload], add a CodeFixProvider
Networking: Optimize prefab instance NetworkSpawn
Networking: Break prefabs before network spawning
Networking: Unify GameObject refresh logic
Networking: Fonts load over local instances
Networking: Deterministic map ids
Dedicated Server: Cvar fixes, cheats
Dedicated Server: clear command
Scene.Source is no longer set when loading an additive scene
Vignette renders before bloom
Derived GameResources are pickable
Removed SceneTree splitter and hotload event
FileSystem.Data is no longer resets with every game version
Ambient occlusion has more sane defaults
AssetPreview uses proper Scenes now
AssetPreview on small objects
Reduce allocations in Json.Diff
Misc Asset Browser fixes:
Only do FolderContextMenu for disk locations. Prevents trying to pin paths that aren't real etc.
Wait for the browser to populate after navigation before trying to highlight an asset.
When renaming non-assets, only auto-select the region up to the last '.' so you can just start typing without accidentally changing the extension, but still change it if needed. (Like windows does)
Editor shortcut consistency
ImageFile TextureGenerator Improvements
RandomTextureGenerator Optimizations
Texture.Load() no longer requires BaseFileSystem to load files
Texture.LoadAvatar() now takes an optional argument for the avatar size
Hotspot Editor - Can now hold CTRL or SHIFT to multi-select rectangles and edit multiple at once
Hotspot Editor - Editor now remembers the Grid Size and Reference Material for each .rect asset
Hotspot Editor - Can right click on a rectangle to quickly delete them
Hotspot Editor - Can now click-and-drag to move or resize rectangles
Blending mode on translucent objects, default alpha blending mode additive
Missing project settings button on asset projects
Input binds not saving
Dedicated server crashes when trying to use lobby methods
Error when in Eye Dropper tool of a list entry and the entry in the list is removed
Fixes a discrepancy between the hashed identity of TypeLibrary methods and MethodIdentity in WrappedMethod from CodeGen when the method is on a class contained within another class
BytePack struct serialization
TypeLibrary is disabled during cctors / package load
Context menu on normal files in the Asset Browser
Error when multi-selecting an asset and a normal file in the Asset Browser
Flickering when dragging material on to scene mesh
Tooltips linger when mousing out of a tooltipped pannel
Depth Linearization in Oblique Matrices
Crash in CSceneAnimatableObject::MergeFrom
[Button] not showing if not returning void
Fixed menu addon not loading in editor (due to whitelist)
ISceneStage spans the wraps the entire scene update, not just OnUpdate
Prevent EditorUtility.RenameDirectory making a directory a subdirectory of itself
🚯 Removed
Legacy particle system - legacy particles will no longer render
Prefab variables
Deleted many unused DLLs reducing the game size
Removed unstable GPU shadow culling
NativeRenderingWidget now doesn't render without a scene