1,002 Commits over 1,369 Days - 0.03cph!
Update Facepunch.ActionGraphs
Get rid of old hack to re-use ActionGraphs between tools and game
Serialize invalid Components / GameObjects as null
Don't call PostDeserialize multiple times for child objects
Keep track of source resource for ActionGraph instances
Also fixes case where prefab ActionGraphs wouldn't get cached properly
Improved inspecting experience with ActionGraph stack traces
* Include source location in stack trace
* Opens the containing scene / prefab when inspecting an ActionGraph stack row
Include ActionGraph diagnostics in console
Graphs need to be loaded at least once for it to know about them
Update AssertNoGraphErrorsInScene test case
We were double-counting prefab ActionGraphs before
Add diagnostics to console on first open
ActionGraphDebugger: resolve original Guid
Fix AssertNoGraphErrorsInScene test
We were counting some graphs twice before
Select target object when inspecting ActionGraph
Make ActionGraphStackLineHandler pattern more lenient
Include ActionGraph errors in ConsoleWidget.PopulateDiagnostics
Refresh diagnostics when saving an Action Graph
Only Show() each Action Graph MainWindow once
Inspecting a cloned ActionGraph edits original (#1663)
Write null instead of trying to serialize invalid GameObject / Component
Attempt to support both types of prefab instances in one places
Don't PostDeserialize child objects multiple times
Attempt to support both types of prefab instances in one places
Write null instead of trying to serialize invalid GameObject / Component
Make ActionGraphStackLineHandler pattern more lenient
Include ActionGraph errors in ConsoleWidget.PopulateDiagnostics
Refresh diagnostics when saving an Action Graph
Only Show() each Action Graph MainWindow once
Inspecting a cloned ActionGraph edits original (#1663)
Fix performance regression if ModelRenderer changes tint often
Fix clearing ModelRenderer.MaterialOverride
Expose IsValid() to ActionGraph
https://files.facepunch.com/ziks/2024-09-09/rwuGmEnsdg.png
Fixes Facepunch/sbox-issues#6376
Group object-targetting utility nodes
WIP: Only allow opening editable action graphs
Include ActionGraph errors in ConsoleWidget.PopulateDiagnostics
Refresh diagnostics when saving an Action Graph
Only Show() each Action Graph MainWindow once
Resolve Action Graph source prefab
Fix unreachable code warning
Hotload tests: log timings in descending duration
Hotload test benchmarking (1D/3D) (struct/interface) arrays
Hotload: Speed up struct array copying, support Rank > 1 arrays
Desperately trying to avoid using A*
WIP grid aligned connections
https://files.facepunch.com/ziks/2024-09-03/sbox-dev_C0Luo6Xsj9.png
WIP more control for rerouting connections
ActionGraph: support reroute comments
https://files.facepunch.com/ziks/2024-09-02/sbox-dev_7qxUe4dDpf.png
TypeControlWidget: fix generic constraints referencing other parameters
Add conversion node
Fixes Facepunch/sbox-issues#6342
https://files.facepunch.com/ziks/2024-09-02/sbox-dev_TFJ3uDBLEo.png
NodeUI width tweak
Default icons for System.String, Component types
Graph editors: align everything to grid
https://files.facepunch.com/ziks/2024-09-02/sbox-dev_dBWkMgscnh.png
Scene.GetAllComponents() is pure
Add To String (Format) node
Facepunch/sbox-issues#6341
Fix Facepunch/sbox-issues#6341
Add default implementations for INoiseField.Sample( x, [y] )
Add ValueField / PerlinField / SimplexField to Sandbox.Utility.Noise
Old static methods aren't thread safe and can't be seeded.
Make sure scene scope is pushed when calling OnValidate
Disable PropertySheetPopup from being modal for now
Fixes Facepunch/sbox-issues#6109
RangedFloat cleanup
* Add Min / Max properties instead of x / y fields, fields are obsoleted
* Max always equals Min for Fixed range type, unlike the old y field
* ToString returns "<min>" for fixed values, or "<min> <max>" for ranges, instead of "<min>,<max>,<type>"
* Parse supports old format
* Can deconstruct: `var (min, max) = range;`
* Add tests parsing old format
Fix [RequireComponent] on properties in derived types
Add Editor.Menu.AddHeading( title )
Fix FindMode.InAncestors in prefab scenes ignoring root object
Fix Capsule.RandomPointInside not being uniformly distributed
It was biased towards the middle of the cylinder
Fix Capsule.RandomPointOnEdge
Before: https://files.facepunch.com/ziks/2024-08-05/sbox-dev_XG28kFmoyv.mp4
After: https://files.facepunch.com/ziks/2024-08-05/sbox-dev_7zJYNsOipq.mp4
Fix shortcuts like Ctrl+Z in ActionGraph
@CarsonKompon let me know if this isn't the right solution here
Add AG nodes to find objects by name
https://files.facepunch.com/ziks/2024-07-30/Pj8i1MXoJx.png
Expose network accessor to ActionGraph
Fix SceneCamera.GetFrustum for ortho cameras
Breaking change, but fixes incorrect behaviour
Fixes Facepunch/sbox-issues#5999
Add Gizmo.Draw.LineFrustum
Use Gizmo.Draw.LineFrustum in CameraComponent.DrawGizmos
Facepunch/sbox-issues#5999
Fix Module.ResolveType for ByRef types
Caused fast hotload to fail for some methods
Add ToString / GetHashCode nodes
https://files.facepunch.com/ziks/2024-07-30/6SrcmglJqF.png
Added failing test reproducing Facepunch/sbox-issues#5991
Be more careful about trivia changes in ILHotload code analyser
Fixes Facepunch/sbox-issues#5991
Reference package.base from libraries when publishing
Fixes Facepunch/sbox-issues#5899
Cache versioned packages separately
AssertNoGraphErrorsInScene: assert downloaded package version
Package.FetchAsync: allow fetching specific version
Disable AssertNoGraphErrorsInScene test temporarily
This only needs to be a warning
Prefab preload: preload into a dummy scene
Revert "Populate Json reflection cache in Json.Initialize"
This reverts commit c0f2f57fc0a12a43ca0b73f3e3bf934a260bd69b.
We don't need this if we preload prefabs
Preload all prefabs when loading a scene
Fix Json.PopulateReflectionCache
JsonTypeInfos would only be stored if the JsonSerializerOptions is immutable
Add serialization_warn_time con var
https://files.facepunch.com/ziks/2024-07-24/sbox-dev_0DtqgKK1dt.png