2,929 Commits over 1,522 Days - 0.08cph!
Rework triggers to check contact points instead of ref counted touches. Add ITriggerListener.OnTriggerEnter/Exit for game objects that contain multiple colliders
Fix NRE in trigger rework
Fix PhysicsBody.IsTouching returning too early
Fix touching colliders only being added to triggers
Add PhysicsBody.IsTouching( body )
Rework triggers to check for exit events at the end of physics step, should be more reliable than ref counting touch events
Disable rendering on sceneobject when model renderer uses model that has no valid render meshes
Cache native physics body shapes so GetShape can have direct access to them
Use error model for sceneobject when model has no valid render meshes
Do the same for scenemodel
Fix map drop object for local maps
Make sure ListView itemsPerRow can't be zero
Add TrailRenderer.Emitting to control when new points should be added to the trail or not
Fix camera shader node typo with FarPlane
Grt rid of log spam in OnAnimationEvent
Animgraph: Add blend cycle option to state machine transitions - blends cycle on transition instead of resetting to zero https://files.facepunch.com/layla/1b0211b1/sbox-dev_fR7ScCdFuP.mp4
Fix readonly string control widget
Remove extra quat normalize that isn't doing anything
Normalize quaternions in AddPoses to prevent drift in model space blending
Don't early out of model collider when there isn't a bone for part
Allow physics shape to associate with a bone index so SceneTraceResult.Bone works when hitting physics shape, as the summary suggests https://files.facepunch.com/layla/1b3111b1/sbox-dev_016MWrhQrI.mp4
Remove the need for CGameTrace and delete it, the less trace result structs we have, the better
Add pivot to sprite renderers
Add Model extension to create bone objects
Rework skinned renderer to use create bone objects extension. Ignore absolute bone objects.
Fix crash in CModelStream::CopyValuesFromStream, assert out of bounds
Save launcher cookies to it's own file
Make sure launcher doesn't save editor cookies, they would stomped on close
Finish bone updates at end of update if transform has changed after updating bones
Revert, this is likely going to break threaded animation
Finish bone update on renderer transform change to ensure bones are up to date in situations where transform changes after animation update
Do not do a recursive destroy on mesh copies when loading fbx blend shapes, this seems to fuck up the original mesh it was copied from https://files.facepunch.com/layla/1b2711b1/sbox-dev_NPHzQrVaHv.png
Fix new project location file dialog not setting initial directory
Include file in delete asset dialog for single asset selection
Physics debug render uses OverlayWithDepth so it's after post process https://files.facepunch.com/layla/1b2411b1/sbox_PvU3Pt0GJf.png
Protect against processing the same physics intersection event multiple times
Apply particle rotation to object alignment mode https://files.facepunch.com/layla/1b2411b1/sbox-dev_Sgw55NzeQF.mp4
Ensure positive zero when doing ValueToString on float controls
Add BillboardAlignment.Object to ParticleSpriteRenderer to align particles to game object rotation https://files.facepunch.com/layla/1b2411b1/sbox-dev_wPXQU0YbTa.mp4
Add transform widget back to prefab object inspector
Don't remove sensor contacts when changing body type, fixes triggers entering without leaving when toggling motion type while inside a trigger
Shadergraph: Get rid of DynamicComboRule( Allow0( D_COMPRESSED_NORMALS_AND_TANGENTS ) )
Rework component serialize bail logic
Add ComponentFlags.NotCloned to opt out of component serialize when cloning in editor
Unfuck native physics interface for creating joints, they should all pass in local frames, it's up to C# to calculate local frames for desired setup
Move joint attachment mode and local frames to base joint, all joints should have these
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
Fix null exception in PlayerStats.TryGet
WorldTextSceneObject needs to be OverlayWithDepth to have depth with draw solids
Fix winding in Gizmo.Draw.SolidBox
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