22,417 Commits over 1,614 Days - 0.58cph!
Added Rotation.LerpTo/SlerpTo for consistency with Vector3.LerpTo/Angles.LerpTo/ect.
Fixed Revert Changes not working for Title/Org on Project Setup page of Settings
Saving prefab session reloads cached prefab scene, resolves Facepunch/sbox-issues#7307
File > Open menu supports opening prefabs too
Added "Find in Scene" to GameObjectControlWidget context menu
https://files.facepunch.com/CarsonKompon/2025/January/06_09-32-OutstandingCuscus.png
Remove configdefaults.PLAT.vcfg, completely bullshit for us
PerViewLightingConstantBuffer_t completely unused
Host Stats / Local Network Stats in Console (#1758)
Make GetStats a property, make it public, document it
InputActionControlWidget sets value to "" instead of null so value is serialized.
Add `UseFovFromPreferences` bool to PlayerController so you can disable and override the FOV without having to create your own camera component.
Fix NREs in the default Pause Menu for connected clients when game package is set to local
Host stats initial commit
Increase reasonable Steam connection time for dedicated server - ensure it shuts down properly if it doesn't connect in that time frame
Update Facepunch.ActionGraphs to 1.9
* Fix graph compilation times
* Compiled graphs avoid allocations where possible
* Compiled graph performance is now much closer to C#
* Cleaner node definition API
* Groundwork for new features #1667
▌▆▌ ▌▊█▅ ▅▆▆▉▋ █▉ ▍▄▄█▋▌▊▋ ▊▄▆█▇█ ▄▇▋▆▇▍▆▇
▄▄▅▉▊ ▌▆▊▌▅█▅▍▌▆▅▇▊█▊▅ ▄▋▅ ▅▇▍▊▄█▋▇ ▍▋█▌▊▇▇▌▇▌ ▋▅ ▅▆▍▋█▌█▊█▆▍ ▍▆▍▇ ▇▍▉▊'█ █▄▆▆▇▇ █▄ ▇▊▆▆▇▊, ▍▍▇▅▅ ▅▄ ▄▍▋▋█▊▊ ▄# ▍▍▌▆▇▊▅▄▋ ▇▄▇ █▇▌ ▍▊ ▊▉▄▇ ▄▋ ▇▉▇▇▅ ██▍ ▋▌▍▇▊█ ▄▄▍▌ ▌▊▌▄▋▉▋▅▋▄▋
▄▊▊▍▆█ ▊▍▇▄▊▇█▇ ▉█▍▅ █▊▊ ▉▅ `▉▇▍▆.▋▋▊▍▊▇▅▊()` ▅▆ `██▄▇.▄▊▋▆▆▇▋▆()`
▄▋▄▇█▅▉ █▅ ▉▆▅▍▅'▊ ▄▍▍▆▊ `▇▆▉ ▊█▆▉▌█▆▅ = ▉▉▉▋.▌▍▇▍▄▅▋▄; ▌▆▍█▍▍▋▇()`
▄█ ▋▄▋▄▇▊.▊█▍▉▉▌▌▌▉▇█▌▌▉██ ▄▄▆██ ▌▍▌▅▊▋▋▍▄▍▋▌▇▉▍▅▉▆▋▆▊▆▋▍ ▌▉ █▍▆▄▋▌▌▆▋ █▅█▌▄
Reorder min and max length in spring joint
Add undo for changing parent or siblings via scene tree
Fixes sbox-issues/issues/7320
Resolve source properly!
Pass on description, title, source info to property
Widget.Parent checks for valid
Can switch shader
Can create ResourceStringControlWidget manually, with target asset type
InputTexture and InputTextureControlWidget
Correctly parse legacy texture input colors
Don't send gameobject network destroy when shutting down game instance, orphaned action should take care of it
[Pick] Remove configdefaults.PLAT.vcfg, completely bullshit for us
Mac/Linux Add Developer-BuildAll.sh for Posix to make it easier to debug, but without tools
Mac/Linux: Use static version of gamenetworkingsockets, cuts a lot of the mess of dependency hunting
Mac: OSX doesn't allow setting DYLD PATH from the application itself, make it parse these relative to the current directory, load correct steam DLL regardless of platform
Start ParticleSpriteRenderer scene object with rendering disabled, it'll get enabled when it's ready - Fixes one frame showing error texture
Adjust sunny and sunset lighting rigs
▅▆▅▍▊▌ ▆▊▍█▍▍█ ▄▆ ▅▉▌█▅▌ ▆▄ ▅▆▉▉▌▍▆ ▍▌▌▋█▄▉▅ █ ▅▊▋▌▊▅ ▄▇▅▉ ▉▋ ▉▇▄▍▍▆▍
! ▊▄▇█▊▊█▅▄▋▉ ▅▊█▇ ▆█▄ ██▄▆▆█ ▆▇█▇█▋▋▉ ▌▉██▌▆▅ (▅▅: ▍▍▊▉█▍▇)
▆▅▉▌▉▋▍█ ▋▍▅▆-▆▅▊▆▍▍▆ ▅▄▍█▆▍▆ ▆▄▆▊ ▌▌█▅ ▄▇▆ -> ▌▄▄ ▊▍▊▌▅ ▌▍ ▄▇▋▋ ▊▅▌▇▇▊▇
Make ParticleLightRenderer public (I assume this wasn't intentional?)
Make Model.GetVertices/GetIndices work without requiring CPU access on model https://files.facepunch.com/layla/1b0311b1/sbox-dev_OOfVZbvWTH.png
Add CRenderContextVulkan::ReadBuffer for index buffers
Do the same for box hull collider
Add Gizmo.Control.BoundingBox to box collider
Stop SoundscapeTrigger on disabled, not just destroy
Add worldspace option for Gizmo.Hitbox.Sprite
Handle default arguments in MethodDescription.Invoke - Fixes ButtonAttribute not being able to call functions that have all default arguments
Add Gizmo.Hitbox.Sprite for a 2d screen space sprite hitbox https://files.facepunch.com/layla/1b0111b1/sbox-dev_0Q4krB3pIh.mp4
Player controller body listens for collision events because child gameobject colliders don't propagate ICollisionListener down to ancestors (should it?) - Fixes player squish and anything using ICollisionListener on the player controller gameobject
Prop makes use of surface break sound
Resave all surfaces
Shadergraph: Save preview settings to file
Fix mesh component not applying tags to collision shapes on tags updated
Don't need to duplicate this code
Add SceneCamera.ToScreen that also returns if it's in front or not
Add Gizmo.Draw.ScreenText that takes world position and screen offset to easily draw screen text at a world position
Fix mesh tools drawing text behind camera
Fix serialized dictionary not triggering on property change when setting key or value
Fix list and dictionary not reaching serialized object property changed callback when removing entries
Add missing conversion formy-up to z-up for navmesh
Added to GetClosestPoint & GetRandomPoint
Don't show recompile button for assets that don't have source files
Refresh collection for list and dictionary control widgets if collection has changed - Fixes game resources not saving lists after first save
Mac: Fix sed and FILE struct for mac, should work on linux too, I'll double check, getting this to boot on mac/linux again and slowly trickling this branch to master
Forgot to make some enums internal whoops
Move navigation from C++ to C# (#1752)
Replace C++ version of detour & detour crowd with a C# version.
Managed version should behave exactly the same as the native version.
If not, please yell at me.
Achieved by using dotrecast as base
- Refactored the shit out of it
- Optimised it, so the managed performance comes close to the native version.
Navmesh generation (recast) is still in C++.