22,418 Commits over 1,614 Days - 0.58cph!
Also only show push to talk input in push to talk activate mode
VoiceComponent.PushToTalkInput mark with InputAction attribute
Fix physics not using the correct per triangle (cell) surface for terrain https://files.facepunch.com/layla/1b0811b1/sbox-dev_KC7RvG3czd.mp4
Use solver hit normal when casting against heightfields, fixes player movement snagging on terrain
Ensure 4 surfaces are always set on terrain collision shape
Make sure GetTriangleMaterial doesn't index outside of materials array
Calculate dominant control map indices to use for per triangle surface indices
Set terrain collision surfaces to storage material surfaces
Allow shape surfaces to include null surfaces
Don't think we need this anymore, fixes NRE when trying to fullscreen game/scene viewports
Don't box select while trying to use orbit camera controls
Fixed ability to create an infinite destroy loop in QObject
ToolWindowManager: don't delete a window if we're removing it as a result of it being deleted
Add TypeLibrary.Create<T> that accepts args
Add GizmoInstance.Clear
Add DockManager.RaiseDock( Widget )
Move ShowCloseDialog to SceneEditorSession (it makes no sense on GameEditorSession)
EditorMainWindow exists during startup, but made visible after startup
Add Scene.Editor.FrameTo (replaces hacky "scene.frame" event) that doesn't work with multiple active scene sessions)
Make SceneEditorSession.Tick a member
Make SceneEditorSession .UpdateEditorTitle non static
Create a SceneDock for each open scene
Give playing scene tab a proper name
Add SceneEditorSession.BringToFront()
Don't try to save tool widget windows that have no name
Hide GameEditorSession + PrefabEditorSession , (its confusing people), refactor, document
Clean SceneViewWidget a bit
Use a different icon for prefab scenes
New Outfit Piece(s) - Gasmask and War Helmet!
Army Outfit bits for citizen
https://files.facepunch.com/daniel/1b0711b1/sbox-dev_betGBfBGKO.jpg
LODs coming next.
Default RenderState DepthFunc to RS_CMP_GREATER_EQUAL, makes shaders without a RenderState set default to it
https://files.facepunch.com/sam/1b0711b1/tt3.png
Readjust depth bias on debug shaders for reverse depth
Fix shadow in reversed depth
https://files.facepunch.com/sam/1b0711b1/tt2.png
renderdevicevulkan: enable reverse depth
Reverse the DepthFunc on all shaders GREATER <-> LESS
gizmo_grid: reverse manual depth bias
We need to change the depth clear value from 1->0 (in 3 different places of course)
Recompiled core shaders
Fix r_depth_debug
Digital, float, vector2 input state fetching
Check valid scene in SceneNetworkSystem message handlers
Fix possible NRE's in SetVelocityFromRendererBones
Add Gizmo.CursorMoveDelta , CursorDragDelta
If we move the mouse while pressing a GameObject, clear it as pressed
Move ObjectEditorTool to its own folder, to highlight that it's self contained
Feed ToolManager to current SceneCamera when updating
GameObject.GetBounds() returns a 1x1x1 square on the transform if no ModelRenderer's are found
Add Gizmo.Draw.ScreenRect
Cache ControlWidget type lookup
Add GameObject.HasGimzoHandle (this is gonna change at some point)
Get rid of this EntityPrefabEditor namespace
Add Rect.FromPoints
Add Frustum.FromCorners
Add SceneCamera.GetFrustum( rect )
Refactor Gizmo.Pressed
Move object selection to EditorTool
Remove Scene.HasUnsavedChanges
Clear scene's unsaved changes when clearing from editor session
Support collision on terrain component https://files.facepunch.com/layla/1b0711b1/sbox-dev_o1zZIhIEEB.jpg
TextRenderer remove Text2 test property
Range check bone gizmos, don't need to render ones far away
FPArms: added shared ironsights animations
Add connect operation to vertex selection https://files.facepunch.com/layla/1b0711b1/sbox-dev_k94KMmxHkm.mp4
Don't interpolate when setting local transform within fixed update if the GameObject isn't enabled. Fixes trying to interpolate to initial position when cloning GameObjects in fixed update, but really we need a way to say "was the game object created this frame" and if it was then don't interpolate.
Clean up
When fetching extensions, check if we want to initialise rather than if we have initialised
Port SteamVR actions over to Facepunch.XR format, update fpxr lib
Removed Median Denoising
Median denoising proved of no real value, so removed it.
Work in progress - added Laplacian on Gaussian for edge preservation + darkness control + other small changes
Ditto
FPXR returns error codes for various functions now, doesn't use builder pattern for instances
FPXR enum update
Initial XR input support
Fixed "launching" text showing when adding a new project (and not launching it)
Use Sandbox.Json.options in BaseFileSystem JSON methods
Gizmo.Draw.LineCapsule fix (#5600)
Model physics automatically inherits bone transform velocity so switching to ragdoll isn't stuck in the last pose https://files.facepunch.com/layla/1b0511b1/sbox_WLc97vrkvJ.mp4
Remove cloth code from sceneanimatableobject, we were also creating a physics world per animated object for it
Don't run SceneNetworkUpdate when network system instance is null
Open editor undo system up, debug dock
Delete SceneWorld objects when processing scene deletes
Components/GameObjects start disabled when creating, to avoid enable and quickly disable
Fix possible NRE when deleting camera
Call SceneWorld.DeletePendingObjects when clearing scene
Add Scene.Editor (ISceneEditorSession), allows game to talk to the EditorSession (gizmos etc)
Also make selection its own undo system - don't need to save the scene on every click
Fix undo system's snapshot system not complying with other undo actions
Remove Log.Info from SceneCubemap
Only do SceneCubemap.RenderDirty() when it actually updates rather than every frame
Only clear up light count instead of also envmap count on AllocateLights()
Clear interpolation properly and don't apply new interpolation if transform update received over network with clear interpolation flag
Another minor fix
SceneStats: include DynamicSceneObject render stats, lights/shadow stats
Remove Preferences.VoipVolume from voice component, handled through the mixer now
Add SoundHandle.Loopback, use voice_loopback to determine (for local voice)
Bounce talking party member
Mic icon when chatting
Switch to ServerGarbageCollection (we'll want to benchmark this when we have benchmarks)
Multiple threads to handle garbage collection, utilizing all available CPU cores.
Better performance in multi-core environments.
Reduced latency due to parallel processing.
Add Sound.UncompressVoiceData
Make Friend comparable
Basic party voice chat
Make voip_volume a convar so it gets saved
Use VoipVolume setting as a multiplier for voice component volume
Change Voice.ShouldExclude to Voice.ExcludeFilter to provide the connection filter list at once, this is easier to implement