21,427 Commits over 1,552 Days - 0.58cph!
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)
Try to make restitution work with soft contacts, fixes bouncy surfaces when dynamic collides with kinematic
WIP cookie get / set node
Better handling for this edge case, also handles empty strings and when the editor itself is mid-shutdown
Grab a few edge cases preventing all scenes from loading from the last session
Update Facepunch.ActionGraphs
Editor will restore all opened scenes/prefabs from previous session, not just the last one.
Don't wipe facets if there aren't any to replace them with, or if we don't find any packages at all
Show asset type color in tag picker
Drag-drop
Open folder context menu in blank space
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
Missed Sound Point description
Add JsonUpgrader support to ConfigData - will be using this for Input config updates
Fix formatting of node titles with type params
https://files.facepunch.com/ziks/2024-10-07/NTc7SLTOVR.png
Add built-in nodes for Scene.GetAllComponents<T>()
https://files.facepunch.com/ziks/2024-10-07/SUbPeMLFFP.png
Added descriptions to Components that didn't have them. Most are self-explanatory, but should help reduce some confusion. Resolves Facepunch/sbox-issues#6560
Split out InputSettings into Input.config - backwards compatible
Add experimental r_tiled_rendering_conservative_culling so people can play with it, uses near-z approach for tiled culling for even better perfomance, doesn't play well with translucents, will be deprecated when we have two sets of light lists
Don't do OnDisabled(); OnEnabled() on Skybox2D dirty but clean up probe cleanly if needed
Scaling should not be applied to NormalToLocal and NormalToWorld but happy to be proven wrong
Fixed transformation order for PointToLocal and PointToWorld, add some tests to make sure they match ToLocal and ToWorld
Test tl, tr, bl and br corners instead of updownleftright for cone frustum culling
Tiled Frustum Culling (#1669)
SkyBox2D Indirect Lighting ( Reflections/IBL ) can be toggled, hammer maps don't expect skyboxes to be used for lighting since it has vrad
Be more conservative by testing 4 points of cone base rather than a sphere shape
Tiled Frustums
Start moving tiled_light_culling to use frusta
Iterate frustum tiled culling
Near/far tiled frustum planes
Very simple ConeIntersect and AABBIntersect
Cubemap frustum cullinng
Show cubemap complexity on tiled debug vis as well
https://files.facepunch.com/sampavlovic/1b2911b1/HM0UBknyYv.png
Set up things to use worldSpaceNear to fix orthographic rendering with tiled rendering, use depth min/max for building tiled frustums
https://imgur.com/a/tybd5Dv
Fix ortho projection for CalculateScreenTiles
fix DepthMinMax on ortho projections, fixes tiled lights on ortho projections
https://files.facepunch.com/sampavlovic/1b3011b1/ZiyxdtwHc1.png
Delete tiled_frustums_cs, main shader does everything, we recalculate it every frame anyway since we also match the depth chain for the far plane, can store it later again from it if we need it for anything
Transform plane directly to local instead of using inverse matrix
Light.GetInvertedRadius() not used anywhere, let's make it Light.GetRadius()
Push radius changes to lightbinner.hlsl
Fix frustum calculation so it wouldnt mess up with low farz, fix FetchDepthMinMax
Using invprojrow3 to linearize depth feels a bit incorrect specially when moving far-z use correct algorithm, can be accelerated later
Depth Near-Far was inverted on tiled_culling, perfect for both near/far planes now
Allow using conservative near-z culling with D_CONSERVATIVE_CULLING and remove elegibility of D_DEPTH_PREPASS, we always have it
https://i.imgur.com/9UlrmTc.png
https://i.imgur.com/joEz72S.png
Allow using conservative near-z culling with D_CONSERVATIVE_CULLING and remove elegibility of D_DEPTH_PREPASS, we always have it
https://i.imgur.com/9UlrmTc.png
https://i.imgur.com/joEz72S.png
Using invprojrow3 to linearize depth feels a bit incorrect specially when moving far-z use correct algorithm, can be accelerated later
Depth Near-Far was inverted on tiled_culling, perfect for both near/far planes now
Fix frustum calculation so it wouldnt mess up with low farz, fix FetchDepthMinMax
Push radius changes to lightbinner.hlsl
Light.GetInvertedRadius() not used anywhere, let's make it Light.GetRadius()
Humans: hook up an extremely basic animgraph so the model stops exploding if you try to use it
Human: normalize movement animation root speed to 80 u/s across animations + lower new constraint weights slightly
Humans: improved existing movement animations
Fix LaunchArguments.Map not working
Serialize animation parameters if they're changed in editor https://files.facepunch.com/layla/1b0611b1/sbox-dev_paNSU6QjyT.mp4
Run animation for skinned model renderer in editor if it has any stored parameters because we want to see them
Signal values changed for float slider, OnChildValuesChanged wasn't called when moving slider
Rebuild colliders immediately instead of next update
Fix NRE setting null surface on physics body or shape, should just set to default surface internally
Don't submit package exceptions in the editor