22,822 Commits over 1,642 Days - 0.58cph!
Properly leave closing remote connection, such as when they dont have a valid auth ticket
Make sure reason code is clamped properly - only call socket disconnect if previously connected
Cleanup
Fix map drop object for local maps
Make sure ListView itemsPerRow can't be zero
Added internal c# methods for steam auth ticket authentication with game server - add some log output for test
Add TrailRenderer.Emitting to control when new points should be added to the trail or not
Fix camera shader node typo with FarPlane
PanelTraversalSystem: Refactor, no more block size, don't use GetPanelsAt, filter root panel descendants by on-screen, eligible panels, then rate them
Set some defaults now stuff is working. Set authentication=true, fakeip=true, and sharedqueryport=true. Servers can be queried in-game, and hide the real IP of the dedi, can be connected to via fake ip or steamid. Oddly though, the Steam Server Browser does not list the server, unless fake ip is off - can look into resolving that later as I don't know who really uses that
More configuration for debugging purposes
Fix compile error, remove debug log
Fix IP Address byte order retrieved from server list
Add steamnetworkingfakeip to steam headers vpc ..
Make sure we disconnect from the network when exiting the game (especially for dedicated servers, we need to clean up properly)
Request and use Fake Ip when starting a dedicated server (test)
Only pass the result, its all we need anyway
Move net config bootstrap stuff to c# so we can set it there, now can be set after steamgameserver init too for custom opts
Gizmo.Draw.Grid can be drawn at an offset
Stun list test, fix game server callbacks for real, implement in dedi server
Fix Prefab Tabs not having a Context Menu, can now Show Prefab in Asset Browser
Added Sound Point Prefab Template and fixed Soundscape Prefab Template
https://files.facepunch.com/CarsonKompon/2024/November/06_13-23-RubberyNeondwarfgourami.png
Fix not being able to right click a scene/prefab tab if it has unsaved changes
Make Right Click clear in the Collision Matrix since the tooltip says it should
SoundComponents now use the AudioDistanceFloat controls for Distance. Updated SoundPointComponent gizmos.
Remove unused OpenXR launch environment variables
Update Facepunch.XR to ec56d1c119e0251cbc105be8a26792e266b68ed3, fixes some minor launching issues
VR hand component fixes
VR world input component
Remove unused VR bits in MenuSystem
Basic VR scene menu, loads automatically if VR is enabled
Add CommandList
* Add CommandList
* Add CameraComponent.Hud
rename RenderBuffer to InsertList
Multicast action graph delegates
https://files.facepunch.com/ziks/2024-11-05/sbox-dev_ntUf9trdvk.png
Fix occlusion not using proper listener position and constantly overriding the target
Fix tileX & tileY not being set in generation cfg
when the tile generation config was created.
This caused all sorts of issues, e.g. incorrect bounds, overwrites of tiles that were already created...
Also don't pad tile bounds on z axis.
Only reinitialize navmesh if tile related properties change
Make navmesh generation parallel & thread safe
Optimization: Shrink tile bounds (Z axis) before generation
Fix broken loading screen characters
ControllerInput: don't use input actions because they change game to game, use raw buttons
https://files.facepunch.com/tony/1b0611b1/sbox_6PTr7T3esQ.mp4
Restore these SceneCamera hooks that fish.sauna is using
Refactor
Gizmo.Settings.GizmosEnabled applies to DrawGizmos as well, resolves #1539
https://files.facepunch.com/tony/1b0611b1/sbox-dev_cW3C5AFArY.mp4
EntityTreeModel::mimeData calls base again so native interactions still work
Hammer GameObjects can have children
https://files.facepunch.com/matt/1b0611b1/sbox-dev_icF9jl1PDP.png
Basic CommandBuffer
Make RenderStage public, space out the numbers a bit more
Slim down SceneCamera Actions
Add CameraComponent.Commands, obsolete unused AddHooks
Break properly when clicking simulated mouse, so we don't interact with every rootpanel, now it's ordered properly
Priority Refactor, didn't make much sense to do it this way
Adhere to RootPanel Priority when rendering overlays
Revert "Fake Ip p2p socket test"
This reverts commit f3bece1dc379452f19b89fad20a1676149deb71a.
Extra debug convars
[pick] GetBindlessRWTextureXXX if compute shader
IsCloudInstalled doesn't care about versions by default
Skip installing remote package if there's already an installed version by default, always download when explicitly installing/updating etc
Remove manual package install button
fix log interpolation
Sound Occlusion traces now follow the rules of the "sound" collision group, which defaults to only collide with "solid".
Fix ProjectSettings.ReadWithFallback not running JsonUpgraders on old meta fallbacks
VirtualCursorSystem - work relative to screen size
Clickable class is prioritized, fix modal system NRE, reduce panel traversal block size
Renamed [Expand] -> [WideMode] with optional parameter to hide the label completely
Make tests compile (still need to be fixed)
Fix regression caused by typo
Remove obsolete transforms
Get rid of detail nav mesh and other memory improvements
Removes detail mesh and also cleans up polygon mesh after detour navmesh creation. Once we have the detour nav data the polygon mesh isn't needed anymore.
Run assettags.updated only on the main thread
Protect against a SceneDock not existing for some reason
Protect against GameObjects being added during Serialize somehow
Pull as much logic as possible from C++ to C#
Streamlines the config handling for recast. In particular it gets reduces the amount of duplicated default values and config setup logic. This is achieved by handling almost everything config related in C# now.
Lets be more explicit with IsPromise, isolate it to GameResource, make it internal, and make sure it gets set to false on load
Fix warnings