22,418 Commits over 1,614 Days - 0.58cph!
Select all mesh vertices with double click
Add Gizmo.IsDoubleClicked
Select all mesh faces with double click
Remove all atlas downsampling bullshit, not even being used
Was accidentally creating new lightbinner (without light info I needed too) every frame :S CSceneSystem::GetLightBinnerStandard() is "FindOrCreate" while from CSceneView actually gets the actual one
GPU Shadow Culling
POC: Don't render shadows that are not visible by GPU depth bounds
Support [Property] attribute on event fields (Facepunch/sbox-issues#4372)
Typo in GetHandleNormalFunc
Serialize and Deserialize Scene properties such as Time Scale, Fixed Update Frequency, Threaded Animation... joining clients will now have correct values for the Scene. These don't replicate when changed after that though. Fixes Facepunch/sbox-issues#4483
When creating networked object from remote (networked), wrap Deserialize and NetworkSpawnRemote in CallbackBatch so that _net is initialized before OnAwake is called. Fixes Facepunch/sbox-issues#4950
Remove all atlas downsampling bullshit, not even being used
Backport shadowcache from CS2
Make CTextureManagerVulkan::GetTextureResource warning only when passed handle isn't invalid, matches behaviour of similar methods
BufferedDescriptorSetVulkan: Handle handles with no data properly, e.g 2 queued texture updates where the 2nd one is replaced data in the handle
Add batch publisher to asset browser context menus
draw icons in the asset list name instead of the icon
Tools: Menu.ParentMenu, Menu.RootMenu
So you can do stuff like menu.RootMenu.Close()
Variable node editing (Facepunch/sbox-issues#5125)
Use StringTable.Remove instead of StringTable.Entries.Remove when removing Connection from ConnectionInfoManager. Fixes Facepunch/sbox-issues#4983
Flip controller contexts once a frame instead of multiple times, breaking Pressed/Released tests when scoping multiple times a frame
Init JsonUpgrade early (fixes sbox/issues/1513)
Render dynamic envmap probes in editor sceneviews too
Make control sheet labels draggable (Facepunch/sbox-issues#5129)
Merge property or variable get / set nodes (#1507)
Make control sheet labels draggable
Merge property or variable get / set nodes
Add .flac sound compiler https://files.facepunch.com/layla/1b1011b1/sbox-dev_trygOXu7s7.mp4
Fix some animgraphs using deleted animtag types
Support FBX Normal Mapping/Reference Mode 1/2
Pivot tool for mesh editor https://files.facepunch.com/layla/1b1011b1/sbox-dev_IpU43VArUy.mp4
Better mesh element selection, supports click drag selection
Cancel block tool placement with delete
Add OnAnimTagEvent to SceneModel and SkinnedModelRenderer
Make sure worker threads start when calling RunInThreadAsync( Action )
Log a warning if a task runs without yielding for more than 1s
Facepunch/sbox-issues#4608
Rename status tag to event tag
Remove unused animgraph tags
Fix NRE in scene tree when selection contains invalid gameobject
Mechanism to abort long-running non-async worker actions
Long-running worker action aborting tests
Fix recent `ResourceHandleToData( ) failed! Falling back to error texture!` spam for error textures
Mechanism to abort long-running non-async worker actions
Long-running worker action aborting tests
Update haptics per-controller
Scoped haptics support
Docs, cleanup
Apply LengthScale
Squash history, update for SDL
Add support for gamepad input scoping
https://files.facepunch.com/tony/1b0911b1/devenv_ixNt02fEyh.png
Fixed controller axes not being specific to controllers 🤦🤦
Fixed editor error w/ InputSettings.Actions
Update Facepunch.ActionGraph
Test
Clean up - use TransformInterpolate class
Can't modify transform if we're a network object root and a proxy - we must stay true to network transform target
Hook up Interpolation enable/disable from Inspector. When Owner calls ClearInterpolation, set a bit on the update msg to have other clients do so as well. Hook up Network.Interpolation and Enable/DisableInterpolation() on the accessor.
Fix to allow interp property to be set by GameObjectHeader
Serialize the interpolation bool with GameObject
Specify in documentation that NetPermission.OwnerOnly works the same as NetPermission.HostOnly for static actions.
Fix crash when selecting nodes with System.Object inputs / properties
Fixed reading String Table snapshot that has an entry with 0 elements throwing an exception. Instead, ByteStream.ReadArray should return null (empty span) if it has a length of 0. Added a test to prove the bug. Fixes Facepunch/sbox-issues#5357
New Hair - Medium Beard
https://files.facepunch.com/daniel/1b0811b1/sbox-dev_pc2pbsjud1.jpg
Serialize Component FullName instead of ClassName. Fixes cases where two components with the same name exist in different namespaces, sometimes the wrong one will be serialized. Fully backwards compatible. Fixes Facepunch/sbox-issues#5331
Test
Clean up - use TransformInterpolate class
Can't modify transform if we're a network object root and a proxy - we must stay true to network transform target
Hook up Interpolation enable/disable from Inspector. When Owner calls ClearInterpolation, set a bit on the update msg to have other clients do so as well. Hook up Network.Interpolation and Enable/DisableInterpolation() on the accessor.
Fix to allow interp property to be set by GameObjectHeader
Serialize the interpolation bool with GameObject
Debug view for scene ref nodes