20,764 Commits over 1,522 Days - 0.57cph!
Remove old SDF functions entirely (byebye)
Iterate GTAO, works almost perfectly ingame, add noise function to it
And the managed side
Serialize/deserialize CMapGameObject
Iterate GTAO, use built in uint encoding for passes, all 3 passes work, workaround for dxc compiler bug with dot product with half floats
Make it easy to drag onto input plugs again
Nicer behaviour dragging to / from reroute nodes
Initial
Assets have colors - these all suck right now, will go back through and pick some less sucky colours later
Preview tweaks
Search widget
Asset popup, will turn this into something more tooltip-oriented later
Split left / split right
Chips from tags
Tweak styling, move current project to top of asset locations list
Implement chip tag filtering
Initial cloud browser, separate from asset browser
Initial tabbed asset picker w/ both local and cloud assets
Rebase fixes
Use ContextMenu
Asset type picker entries are now handled by AssetBrowser/CloudBrowser
Open up asset locations
https://files.facepunch.com/alexguthrie/1b0211b1/sbox-dev_mXx146R80H.png
Add all types to cloud browser
Can only select one cloud asset type at once (or it'll mess with facets etc.)
https://files.facepunch.com/alexguthrie/1b0211b1/sbox-dev_1BIcVF3lFI.mp4
Order modes
Add cloud browser to hammer
Asset browser defaults to project assets path
Update view mode icon when scrolling
Disable Parent Directory button if we're in project assets root
PathWidget fixes, separate segment update
Remove AssetBrowserLocation.FromPath, unused
Run OnPathEdited at the end of AssetBrowser ctor so we can disable Parent Directory button if needed
Remove AssetPopup, we're just overcomplicating things for no reason there
Directory context menu
Clean up asset list entries
Remove unused, hook up AssetLocations.OnFolderSelected
Invoke events
Clean up
Implement asset picker
If a picked asset is a cloud package then stick the ident in the search bar in the asset picker
Rather than going to .sbox/blablabla
Renames, deletes, duplicates handled by IAssetListEntry
CloudBrowser cleanup
Ended up not using any of this, get rid
PackagePopup: show tags, word wrap
NRE fix
Fix warnings
Drag-drop
Open folder context menu in blank space
Show asset type color in tag picker
Don't wipe facets if there aren't any to replace them with, or if we don't find any packages at all
Smaller add button, rename to new
Delete flat view, doesn't make sense - I think most people were just using it for searching
Fix double-clicking on assets & packages
Fix history menu
Show cloud browser in default layout
Fix searching by type
Tidy up
Re-add super basic version of `t:vmdl`, `t:vmat`, etc.
https://files.facepunch.com/alexguthrie/1b0811b1/sbox-dev_yUjxPKGytb.mp4
Cloud browser sidebar
Clean up cloud browser nodes
Installed filter
Implement Everything & Recents
Implement Everything & Recents
Add EditorUtility.RestartEditor, RestartEditorPrompt
Add editor prompt which restarts the editor when changing parent game / target game
More explicit HammerEvents
Managed map node callback interface, a little convoluted because of mapdoclib <-> hammer <-> managed. But this is easier to do callbacks and can return values
JsonIgnore Resource.IsValid
Split off node menu logic to a separate file
Basic version of dragging from inputs in graph editors
Fixes Facepunch/sbox-issues#6031
https://files.facepunch.com/ziks/2024-10-10/sbox-dev_QpOhqAKPM5.mp4
Attempt to include map vpks as LargeNetworkFiles, Facepunch/sbox-issues#6573
Colliders use the target world of rigidbody to work out the local shape transform, more reliable than using the physics body transform
Check for changes internally for physics body SetPosition and SetOrientation, setting them wakes up the body and moves proxies so only set them on change
Fix isUpdatingFromPhysics not being set back to false
Don't include triggers in mass calculation, rebuild mass when trigger property changes
Fix CPhysicsShape::SetMaterial likely not rebuilding mass properly
Bump up log level of native warnings
Print more user friendly error when we try and fail to load vpk of an uncompiled map, don't piss out searchpath debug anymore
Show inspector hint when an assigned map is uncompiled
https://files.facepunch.com/solw/2024/October/09_19-20-JumpyOropendola.png
Clean up cloud browser nodes
Installed filter
Move server package list to networked StringTable, sync to clients/late joiners when host mounts packages, resolves Facepunch/sbox-issues#6529
Obsolete unused MountAsnc, IsMounted params
Catch ServerPackage download exceptions and flag download as errored
Added interp_debug ConVar and simple representation using sphere gizmos (white is the current interpolated position, cyan is the target position)
Added Show Interpolation Debug options to debugging menu and Game Debug context menus. Fixed toggle not working for Show Physics Debug in Debug menu (use ConsoleSystem.GetValueInt)
Adding and removing from HashSetEx is thread safe
Move Physics step to AFTER FixedUpdate instead of before.
Add Collider.GetVelocityAtPoint
Change how RigidBodies update their positions from the Physicsbody
Update keyframes more explicitly
InterpolationSystem uses HashSetEx
Clean up how transforms are updated from bodies
Revert rigidbody positions updates to be non threaded, I don't feel comfortable
Add IScenePhysicsEvents
Add Summary to FixedUpdate
Refresh shape contacts before and after changing tags, fixes shape collision rules not updating when proxy bounds are overlapping
Don't draw physics wireframe with alpha, it's hard to see
Expose Friction on Collider (we can add them all but this is all I need right now)
Clean up node creation menu types, add a description of each class
Clean up FindAllReflectionNodeTypes
Clean up EventSystem.Run
* Avoid repeated logic
* Aggregate exceptions
* Make sure all actions run
Fix AreParametersActionGraphSafe with delegate parameters
Validate event method parameters in RunEventNodeType
Calculate gtao depth and normals properly, use inverted depth for gtao
Remove unused SpeculativeContact stuff
Remove overriding SkyIndirectLighting to false in hammer maps, a lot of public maps are built without lighting and rely on IBL to have ambient lighting, we don't have a good way to tell if a map has baked lighting on MapLoader, better to just keep this on and let artist elect if they want IBL lighting by themselves
Add Surface.RollingResistance https://files.facepunch.com/layla/1b0811b1/sbox-dev_JICzg1spr4.mp4
Obsolete Surface.Dampening, unused, never has been
Add g_tint to gizmo line shader
Only rebuild colliders when they need it
Fix NRE updating recent scene list
Updated Menu Avatar Scene so it doesn't use missing materials
Fix searching by type
Tidy up
Re-add super basic version of `t:vmdl`, `t:vmat`, etc.
https://files.facepunch.com/alexguthrie/1b0811b1/sbox-dev_yUjxPKGytb.mp4
Rebuild mass when updating physics shapes (only convex shapes)
Only update collider shape on property change
Include new .sbox/cloud directory as build map cmdline -searchpaths arg
Remove mock GameObject/Prefab code from managed MapEntity
Add CMapGameObject map node with managed counter part that wraps a GameObject
Hammer world's Scene uses HammerSceneEditorSession
Add HammerManagedInspector that can take over if it likes the MapNode. We only like MapGameObject for now
Run Scene.EditorDraw() on MapView for gizmos, remove old Entity.DrawGizmos
Hammer: Create GameObject Test option
Update Facepunch.ActionGraphs
Smaller add button, rename to new
Delete flat view, doesn't make sense - I think most people were just using it for searching
Fix double-clicking on assets & packages
Fix history menu
Show cloud browser in default layout
Renaming assets now lets you just change capitalisation, resolves Facepunch/sbox-issues#6564
Initial
Assets have colors - these all suck right now, will go back through and pick some less sucky colours later
Preview tweaks
Search widget
Asset popup, will turn this into something more tooltip-oriented later
Split left / split right
Chips from tags
Tweak styling, move current project to top of asset locations list
Implement chip tag filtering
Initial cloud browser, separate from asset browser
Initial tabbed asset picker w/ both local and cloud assets
Rebase fixes
Use ContextMenu
Asset type picker entries are now handled by AssetBrowser/CloudBrowser
Open up asset locations
https://files.facepunch.com/alexguthrie/1b0211b1/sbox-dev_mXx146R80H.png
Add all types to cloud browser
Can only select one cloud asset type at once (or it'll mess with facets etc.)
https://files.facepunch.com/alexguthrie/1b0211b1/sbox-dev_1BIcVF3lFI.mp4
Order modes
Add cloud browser to hammer
Asset browser defaults to project assets path
Update view mode icon when scrolling
Disable Parent Directory button if we're in project assets root
PathWidget fixes, separate segment update
Remove AssetBrowserLocation.FromPath, unused
Run OnPathEdited at the end of AssetBrowser ctor so we can disable Parent Directory button if needed
Remove AssetPopup, we're just overcomplicating things for no reason there
Directory context menu
Clean up asset list entries
Remove unused, hook up AssetLocations.OnFolderSelected
Invoke events
Clean up
Implement asset picker
If a picked asset is a cloud package then stick the ident in the search bar in the asset picker
Rather than going to .sbox/blablabla
Renames, deletes, duplicates handled by IAssetListEntry
CloudBrowser cleanup
Ended up not using any of this, get rid
PackagePopup: show tags, word wrap
NRE fix
Fix warnings
Drag-drop
Open folder context menu in blank space
Show asset type color in tag picker
Don't wipe facets if there aren't any to replace them with, or if we don't find any packages at all
Clear out null components on hotload
Add RigidBody version of Sweep to Scene.Trace
Forgot to return array to pool
Fix non uniform scale sphere collider updates
Don't rely on keyframebody when updating colliders, they could be sweeping to a new position so the shape gets updated using an incorrect local transform
Fixed input settings not being applied in subsequent games (d'oh)