243,189 Commits over 3,898 Days - 2.60cph!
▆▆▊▅▅ ▌▍▋▅ ▊▍_▇▌▉▇_▄█▅▉▊▇▊▊▅ (▍▄▉▉▄▇ ▉▋▊ ▋▍▄ ▇▅▄▋ ▉▆.▉▉▆▋▌▄▌▄▄)
▊▍▍ ▍▋▍ █▆▄▆ ▅▉▆▍ ▊█▄▉█▆ ▆▇▉▌▌ █▊▍▌▉▅█▆ ▋▉▍▉█▌▆
Refactor parabolic sampling into its own class. Remove cardinal spline code. Integrate porabola visualisation into the vine launch points. Remove old visualisation code,
Sync viewmodel deploy skip: Play anim on unholstering, not when swapping between pawns etc
If we attempt to possess a pawn without a PlayerState, fallback to using local
Fix suicide not working with bots
Reverse layout of chatbox so input hints stay at the bottom
▅▄▌ ▇▇▇ ▅▋ ▊▅▍▅▅█▉▊_▋▊▇▄▌▊_▄▋▉█▅ ▄▍▄ ▄▊▄
And the managed side
Serialize/deserialize CMapGameObject
- ▄██▍█ ▊▆▋█▇█▊▋▇▅ ▇▍ █▇▆▉▅▊▄▇▅ ▇▌█-█▆▅▆▊▌▋▇▄▍ ▇▍▉▅▌▅ █▌ ▍▆▆▇▄▊▉▅▍▌▇▉▆▆█▇▍▄
- ▇█▅▉█▍▌ █▍▆▄▍ ▌▍▌▇█▉▅ ▅▆█▊█▌ ▍▍ █▋▅▉▅ ▆▋▋▄▊█_▌▆█▊▋▇▅▍ ▍█▋▌▌▌ ▆▌ ▌▌▋▊▊█ (▄█▋▌▋ ▌▋▅▅▋▊▍▊▌▊▉▋▇ ▆▍▍▉▋▌▇▊▍▇ ▌▍▆▍ ▋█▆▄▍▌ ▉▇▆▌▆▍▅ ▌▆▇▆▇▄ ██▋-▉█▊▍█▄▌▇▆▆)
- █▋▆ ▆▉▉▊▌▋▍▊_▄▇▋▊▉█_▉▅▉▌▋ ▉▍▌▌█▄█▉█ ▌▊▄██▉ ▍▌ ▋▋▅▋█▅█▄▍▆ ▍▉▇▆▋▇▋ ▅▇▇▋▄▊█ ▅▉▌█▇▆▅▍▉▋▇▋ ▊▄▅▌█▋ (█▋█▄▅▉ ▌▊▋▇▆▉▅▊ ▄▋▉▍▆▄▋ ▊▅▄▍▉▌▍▊▊ ▍▉ ▍▍▊▌▍▅)
Battering ram prefab and code baseline
Added BaseSiegeWeapon class, started to clean up prototype code
Updated Wooden Shield Textures
Updated Wooden Shield World Model and View Model to have better strap positions
Iterate GTAO, use built in uint encoding for passes, all 3 passes work, workaround for dxc compiler bug with dot product with half floats
Merge: from requesttrees_spike
Removes the "server_requesttrees" lag spike on player connect by spreading out the processing over the next frames. Server owners can disable this via `TreeManager.EnableTreeStreaming 0` and adjust it's performance via `PlayerBudgetMS`, `UpdateBudgetMS` and `CellSize` admin servervars.
Tests: Booted Procgen 6k world - took ~3.5min to stream entire world to a player at 10 server fps, with no visual deterioration.
Cardinal Splines offering little improvement with increased complication. Lets fake a porabola instead
Correctly hide some gizmos
planks
material changes
Restrcting player seeds to single model for now
Update: Log TreeManager's treaming grid dimension on init
- Available as part of Network level 1 logging
Tests: booted in editor with server-only mode
Cells get unloaded gracefully when world is cleared / destroyed
Fix warnings
Use every ICellLoader in the scene, not just the first
Document ICellLoader
Document CellIndex, change property order
Merge: from main
Tests: editor boot
Initial work to try out Cardinal Splines:
- Setup minimal tension values (basically Catmull-Rom)
- Movement adjustments
Update: Use RustLog instead of debug log in TreeManager
- Also fixed a minor bug that would not display full timing accuracy for old method
- Moved logs to level 1 of Network (was 2)
Tests: enabled network logs and tried with tree streaming enabled/disabled
Update: adding doc string to Pool.FreeUnmanaged(ref Stopwatch)
Tests: none, trivial change
Optim: avoid StopWatch allocations via Pooling
Tests: on Craggy flew out until only impostors visible
▊▊█▊█ ▅▆▋▍ ▄▋_▄▄▍▅_▌▉▄▌▉▍▆▆▅ (▇▇▅ █▌▇▍▌_▅▅▌▍▋█▉ ▄▊▍▋▉▉▌▄ ▊▇▊▄▄▅ ▉▅▇ ▇▇▆▅▍▌)
exported wolf swim animation
▄▋▇ ▄▄▉▍▆▉ ▍▉▊▍█▄▍▆▅▋ ▇▉█▋▄_▄▇▊▉▄▍ ▌▄▍▄▋▋▇▇ ▄▇▇▅▄▆▄ ▆▍▊▄ ▆▋▋▍'▍ ▉▉▍▇▍▊ ▌ ▇▅▊ ▅█▋▍▊▆▊▌
Make it easy to drag onto input plugs again
Nicer behaviour dragging to / from reroute nodes
Clean: updated a comment implying a potential bug - it was wrong
Tests: none, trivial change
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
Polish on catapult. Fixed missing material slot on catapult entity
Update: TreeManager's grid is defined by cell size
- Exposed via TreeManager.CellSize convar (takes effect at boot only)
- Reorganized code a smidge to reduce how scattered a bunch of info was
Tests: On craggy connected with 2nd player and flew out until only impostors were visible.
Implement Everything & Recents
Add EditorUtility.RestartEditor, RestartEditorPrompt
Add editor prompt which restarts the editor when changing parent game / target game
Add optional arguments onto `ddraw.text` command to modify distanceFade & zTest
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
Menu camera animation
Mask on wobble
flag material
Fix USP/s viewmodel missing bodygroups
reinforced wooden shield viewmodel
Bring back player body and gun shadows, fix floating equipment shadows
M700 rebake with correct triangulation
battering ram temporary greybox
Move to separate input config