20,860 Commits over 1,522 Days - 0.57cph!
Add project from folder
create new project
ActionGraph fixes / improvements from hackweek
Everything except the component editor
Fix embedding target object in scene Action Graphs
Fix legacy Get Game Object node
Add PhysicsBody.AddCylinderShape and PhysicsBody.AddConeShape
Add hull collider component to combine multiple hull shapes with selector (box, cone, cylinder) https://files.facepunch.com/layla/1b1511b1/sbox-dev_KwarwIJ8dm.mp4
Move SegmentedControl over
Add EditorUtility.DisplayDialog which asks a bool
Pin/Remove works
Fixed get component helper nodes
QtAppSystem styles, filesystem
ToolFramwork2 startup, use managed qt init
Launcher has project list basics
Paint.Draw from url is dpi aware
Give components an ID, add ComponentList.Get( guid ), serialize and deserialize component references properly
Add backwards compatibility when deserializing component references (find type)
Started on ComponentDefinition GameResource
Proof of concept generate component type at runtime
https://files.facepunch.com/ziks/2024-02-05/sbox-dev_Ga8FKcNpIW.png
Implemented properties in component definitions
https://files.facepunch.com/ziks/2024-02-05/sbox-dev_KJpUex47QT.png
Fixed hotloading ComponentDefinition changes
BaseResourceEditor.SavedToDisk()
Started on a ComponentDefinitionEditor
Property editing mostly working
Get rid of Asset.SaveToMemory
Avoid re-deserializing GameResources after they have just saved to file
Fix ComponentDefinition not building on change
WIP editor for adding methods to components
https://files.facepunch.com/ziks/2024-02-06/sbox-dev_eh9gkCe81q.png
Generate method stubs based on component definition
Implemented calling methods on generated components
ActionGraphComponentTemplate
Action Graph editor tweaks
Fix Action Graph node pulsing being unreliable
Make sure graph is saved to file on Ctrl+S when embedded in resource
Create methods from inside the Action Graph editor
Action Graph: Double-click on a property to edit it
https://files.facepunch.com/ziks/2024-02-07/devenv_aHfLD4Qsb5.mp4
Action Graph: double-click on method node to go to definition
Use CodeEditor.OpenFile() when double-clicking nodes
https://files.facepunch.com/ziks/2024-02-07/devenv_u7cl3d2Gzu.mp4
Enter name when creating method out of nodes
ActionGraph, ShaderGraph: store view in cookie per-asset
Can create component properties from within the Action Graph editor
https://files.facepunch.com/ziks/2024-02-08/devenv_AN2eN6L2BR.mp4
Node grouping tweaks
More node list tweaks
https://files.facepunch.com/ziks/2024-02-08/sbox-dev_gRcj5bOB44.mp4
Can directly use component properties as node inputs
https://files.facepunch.com/ziks/2024-02-08/sbox-dev_sjs44F0SQM.mp4
Fixed private [Property] not showing up in node list
Menu.AddOptions()
Refactor GraphView to use Menu.AddOptions
TypeControlWidget now uses Menu.AddOptions too
More node list tweaks
Fix clearing and expanded output
Double-click on an output to auto expand / hide expanded outputs
https://files.facepunch.com/ziks/2024-02-08/sbox-dev_KZJs1sxKKy.mp4
Specify which members should get auto-expanded on double-click
Update Facepunch.ActionGraphs, fix filtering methods for parameter safety
Implement expression methods / outputs
Fix invalid program involving value type inputs
Rebuild component type if method or property removed
Menu.AddOptions: support having headings at any depth
https://files.facepunch.com/ziks/2024-02-09/devenv_mRkCi2hCHa.mp4
Node list tweaks
Playing with a live value inspector on hover
https://files.facepunch.com/ziks/2024-02-09/sbox-dev_0Iwj4OgIbd.mp4
Can set default values for component properties again
https://files.facepunch.com/ziks/2024-02-09/sbox-dev_v4JnzXDks5.mp4
ComponentDefinition property default value hotload fixes
Create properties from inputs
Fix menu item ordering with headers
Fully refresh component list on hotload
Small Action Graph editor fixes
Node library tweaks
EnterNameMenu fixes
Avoid re-using member names of deleted members
Use aliases for types like float, int, bool
WIP
Update Facepunch.ActionGraphs
Fix after rebase
WIP simplifying after ActionGraph refactor
Support custom [ClassName] when serializing type references in ActionGraph
????
Fix deserializing override methods
Fix passing target
Fix creating local instance nodes
Fix target type in editor
Re-implement embedding target in scene ActionGraphs
Fix Camera.RenderToTexture incorrect aspect when using ortho, just use ortho height, we don't use ortho width and it should be removed
CanSpawnObjects settable only by the host
Init qt fonts properly
Init qt dirs properly
GatherVisibleLightsGPU
Move depth prepass to be the first pass of everything, we'll use it on lightbinner for light culling from now on
Do lightbinning for light culling on render thread when a layer first wants to request lights, guarantees we have a depth pyramid by then
If we are on a render thread just do a simple flush for ForceFlushGPU(), we just want the GPU to finish it's work, not clean up things
ContextTools not used anymore
Delete Command.Collection, simplify concommand internals. Change how cookies work, filenames (your cookies will be cleared)
Update default editor layout
Delete empty cookie files instead of writing them
Fix convar values being wrong
ProjectList: fix NRE on Project.Current
Fix InputRouter not passing to game when no menudll is loaded
Fix launch settings, remove bullshit ones
Treat warnings as errors so I stop pushing shit code and having CI fail
Fix warning
Initialize these engine classes outside of MenuDll now that editor doesn't run menu dll
Null check a bunch of IMenuDll.Current calls
Remove a test log
CodeGen static array for attributes on a CodeGenerator method/prop now marked as [SkipHotload] and readonly, so they do update when changed
Tweak how launching works, don't put tools and game in their own contexts anymore
Add QtAppSystem
Update QApp.def
Add SkinnedModelRenderer.AnimationGraph to override animgraph
Can a connection create objects?
Send network destroy even if DestroyImmediate is called
Ownership authority flags
Let GameObject have [Sync] too (test)
Reorder enum, add [Expose]
Change up logic for can create objects - only check if we have a source
Default CanCreateObjects to true for now (this is current behavior)
Initial implementatior for ownership authority
Use NetworkAccessor for changing ownership authority. (Temp? Depending on review) don't use TL for set prop for Sync Vars
Initial implementation of Rpc authority
Fix a couple of invalid cases for compute shaders when viewport is very small but not zero
Nicer assert for invalid vk compute shaders, and don't actually dispatch invalid ones otherwise we'll probably crash
Fuck this test for now, a full end to end test for opening a project would be better
Re-organise launcher projects
Add Reset to Default support for ControlSheet properties
https://files.facepunch.com/tony/1b1411b1/sbox_KIMZGVsIH7.mp4
Fix empty test warning. Test OpenProject directly
Add EditorHandle for TextRenderer
https://files.facepunch.com/tony/1b1411b1/sbox_QaTjrkmULD.png
Remove File -> New Game Project...
Make project opening code more predictable, move to Sandbox.Tools, fix compiling before dependant packages are installed, kill more content mode shit.
Adding documentation for the api page
strip unused
Remove unused
Abs the radius in Gizmo.Draw.LineCylinder so it isn't all fucky
Allow multiple ShowIfAttributes, will show property if any of them are true
Add SerializedProperty.GetAttributes, will be needed if we want to get multiple attributes
Fix triggers activating when collision default is set to ignore
Make a deep copy when getting common inputs
Remove NetAttribute, LocalAttribute, PredictedAttribute (unused)
Binds
create mixer - can play sounds!
strip vmixtool
Remove unused args
Add some more c# compatible funcs to CAudioMixBuffer
Add AudioBuffers, MixBuffer
Audio processor basics
Route SoundHandle through managed system, use speaker volumes etc
Play sounds from the point of view of the scene camera if we're not playing the game, and this window is focused
Strip as much as I dare right now
Add steam audio
Update steam audio binaries
Add steam audio binds
Add BinauralEffect processor
Steam audio scene system
Apply direct
Create phonon.pdb
Reflection works! 😅
Latest
Clean up
Fix menu sounds not playing
Refactoring, making internal
Fix warning
Add joint break strengths to modeldoc
Refactoring, making internal
Fix warning
Clean up
Fix menu sounds not playing
Clear watcher var after dispose
Fixes Facepunch/sbox-issues#4725 - Fixes a bunch of issues with SCSS hotloading. Style sheets weren't actually being removed when deleted or changed. Clear previously loaded style sheets properly on hotload. Properly update when stylesheet is added after it had tried to be loaded before.