20,763 Commits over 1,522 Days - 0.57cph!
Factor in surface velocity when solving linear friction constraint
Add PhysicsShape.SurfaceVelocity
Add Collider.SurfaceVelocity - Sets the local velocity of the surface so things can slide along it, like a conveyor belt https://files.facepunch.com/layla/1b1911b1/sbox-dev_0LL7vekKM3.mp4
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
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
And the managed side
Serialize/deserialize CMapGameObject
CMapGameObject::GeneratesEntityModelGeometry()
Expose CMapGameObject JSON to MapBuilder via IHammerMapLoader
Collect CMapGameObjects, compile them into scene.json inside the vpk and let MapInstance load them (Very hacky code needs cleaning up)
MapWorld.Scene sets a Scene.Source in an attempt to make AG happy
Tie Meshes to GameObject button
Add def for CMapNode.GetRootDocument()
ActionGraph source location refactor
Add MapSourceLocation, fix editing action graphs in .vmap files
Check for MapSourceLocation in ActionGraphView
Open source map when inspecting graph from .vmap
Parent action graph editor to hammer window if editing map graph
Push AG serialization options when saving map game object
Makes sure we replace any cached versions of graphs
Implement setting HammerSceneEditorSession.HasUnsavedChanges
Fix action graphs from maps not caching correctly
Only OpenContainingResource if not already open
Fix action graphs in unsaved hammer maps
Associate graphs with a HammerSceneEditorSession if open in hammer,
which is resilient to renaming etc
Normalize map path name
Can tie map meshes to GameObjects, these get built into models and any components on the GameObject with a Model property get populated by it
Trim world builder
Implement CMapGameObject::Copy
Sync native transforms to managed
Scene changes (new component, prop edits, etc.) mark Hammer map as having unsaved changes (otherwise it refuses to save)
Several assumptions of SceneEditorSession.Active.Scene should be GameObject.Scene
Reference formatting tweaks
https://files.facepunch.com/ziks/2024-10-19/sbox-dev_UakhR0G0Jj.png
RigidBody.CollisionUpdateEventsEnabled is disabled by default
Apply EnableTouchPersists on collider shape create
Tweak MassOverride to not call MakeDirty
Some nicer description formatting for tooltips
Show return value descriptions in action graphs
Fixes Facepunch/sbox-issues#6636
Expose Sandbox.Achievement to TypeLibrary / ActionGraph
Fixes Facepunch/sbox-issues#6637
Dynamic and managed scene objects draw bounds properly
Fixed TextBlock adding margins when it didn't need to
TextRenderer GameObject gets bounds (so draws in the correct order)
Add multibounce ambient occlusion (but keep it disabled for now)
https://files.facepunch.com/sampavlovic/1b1811b1/UckNYcRubO.png
Adjust AO intensity, separate passes, add spartial/temporal passes, adjust thin compensation to become thickness
Set D_WORLDPANEL properly when pushing and popping layers
Fixes WorldPanel rendering regression sbox-issues/issues/6632
Removed unused avatar_menu_map vmap. Prevents downloading a bunch of cloud assets when creating a new project (such as USP_W)
Description attrib codegen: support method parameters
Fixes Facepunch/sbox-issues#6622
Fix description of expanded outputs
Better solution for ignoring empty files for project upload, resolves Facepunch/sbox-issues#6608
Fixed blendmode multiply not alpha blending
Remove nulls in updateComponents (prevents NREs when hotloading)
Add "Position Absolute" to gameobject flag selector
TextRenderer uses TextScope (outlines, shadows, letter spacing, italic)
Add ability to group selection into new parent GameObject, add bind (CTRL+SHIFT+G), resolves Facepunch/sbox-issues#6587
Fix action graphs in unsaved hammer maps
Associate graphs with a HammerSceneEditorSession if open in hammer,
which is resilient to renaming etc
SampleScreenSsMSAA to composite non-MSAA screen effects ( SSR, AO, etc ) into an MSAA buffer
https://files.facepunch.com/sampavlovic/1b1711b1/05csVIYZJM.png
Move & scale scene camera speed overlay based on DPI
Fixes it being out of place on HiDPI monitors https://files.facepunch.com/alexguthrie/1b1711b1/sbox-dev_59G1WDRdBm.png
SCSS calc tests for bare literal values, variables
UI: Push root values between building style and cascaded PreLayout
Treat worldpanels as layers
Add vector3.InverseLerp
Add Collider.FindClosestPoint( p )
Expose Achievement.Score, resolves Facepunch/sbox-issues#6585
Only provide SourceLocationAttribute on primary class declarations, fixes "Open Component.Partial.cs", resolves Facepunch/sbox-issues#6612
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
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
And the managed side
Serialize/deserialize CMapGameObject
CMapGameObject::GeneratesEntityModelGeometry()
Expose CMapGameObject JSON to MapBuilder via IHammerMapLoader
Collect CMapGameObjects, compile them into scene.json inside the vpk and let MapInstance load them (Very hacky code needs cleaning up)
MapWorld.Scene sets a Scene.Source in an attempt to make AG happy
Tie Meshes to GameObject button
Add def for CMapNode.GetRootDocument()
ActionGraph source location refactor
Add MapSourceLocation, fix editing action graphs in .vmap files
Check for MapSourceLocation in ActionGraphView
Open source map when inspecting graph from .vmap
Parent action graph editor to hammer window if editing map graph
Push AG serialization options when saving map game object
Makes sure we replace any cached versions of graphs
Implement setting HammerSceneEditorSession.HasUnsavedChanges
Fix action graphs from maps not caching correctly
Only OpenContainingResource if not already open
Sometimes ManifoldPoint->Impulse is nan, I don't know if that's expected
Add Rigidbody.Touching - which returns a list of triggers that it's currently touching
Prevent leaving triggers early when you have multiple colliders - I don't enjoy the amount of complexity this adds
Whitelist System.Int128
sbox-issues/issues/6627
Proper TAA, option for spartial or temporal blur
"Current Project" in Asset Browser is actually the current project, though this is probably already fixed in the new asset browser
Resolves Facepunch/sbox-issues#6614
Read input config when changing input settings, resolves Facepunch/sbox-issues#6590, Facepunch/sbox-issues#6599
Fix null exception in PlayerStats.TryGet
WorldTextSceneObject needs to be OverlayWithDepth to have depth with draw solids
Fix winding in Gizmo.Draw.SolidBox
Add impulse to PhysicsContact
Fix dragging installed cloud assets, don't just bail if it can't find primary asset, fallback to url
Support drags from resource control into scene viewport https://files.facepunch.com/layla/1b1711b1/sbox-dev_A0eI3zWHiZ.mp4
Create and cache line shader outside of SceneLineObject constructor, these scene objects are created on a thread and material load has to be on main thread
EnableTouchPersists default to true on Rigidbody
Citizen/animgraph: make scale_height not bouncy anymore
Second pass at grid-aligned connection style
https://files.facepunch.com/ziks/2024-10-15/sbox-dev_635BI3Qt2h.png
Simple solver for default connection offsets
https://files.facepunch.com/ziks/2024-10-15/sbox-dev_x2R1XluVOZ.mp4
Tweak ZIndex of connections when hovering / selecting
https://files.facepunch.com/ziks/2024-10-16/sbox-dev_kaYI58Tlex.mp4
Some final tweaking of default offsets for connections
Fix command line args preference not being set - line edit is auto focused so bind system needs to be flushed to set it before focus
Revert edit button on resource control
Only show resource control buttons on control hover so they're less in your face
Set tooltip for component control picker button
Add open in editor button to resource control, this is a common enough action to have on the control widget
Fix Video background-image going out of sync causing it to stop looping - disable audio on video player and sync clock to video instead of audio (background-image shouldn't have been playing audio)
Add SkinnedModelRenderer.TryGetBoneTransformAnimation to get the worldspace bone transform after animation but before physics and procedural bones
Fix gizmo transform for gameobjects with absolute flag
Shitty TAA, smeary but iteratable with bbox clamping, add thin occluder compensation
UI: Use correct defaults for rem/em, classify them as dynamic so they update more frequently
UI: When pushing matrices, multiply by parent matrix if there is one
Fixes sbox-issues/issues/646
When going through networked files, if it doesn't exist, log a warning instead of failing outright
Standalone exporter keeps track of file type (e.g. executable, dll, project asset), shows source + destination in log window
Add smooth move and rotate to rigidbody instead of having to access physics body for them