4,126 Commits over 1,491 Days - 0.12cph!
Scale hull collider points with world scale
Fix capsule collider not using world uniform scale when it probably should
Rigidbody with motion disabled uses shadow controller because it's kinematic
Return joint desc limits in degrees because who wants to deal with radians
Make SetBoneTransform and ClearPhysicsBones because I need them
Support HideAttribute on enum control widget entries
Add points primitive type to hull collider for the situations when you want a custom hull collider defined by points
Add attachment mode to ball joint, same as hinge
Fix crash getting joint desc limits, interop hates this for some reason
Implement CastBodyMultiple for trace body run all
Fix Trace.Body not using start rotation
Update physics shape material properties on surface reload
Remove vsurf resource, we use surface game resource for this
0,1 range on Collider.Friction
Make sure collider friction is set back to surface friction when custom friction is disabled
Colliders use the target world of rigidbody to work out the local shape transform, more reliable than using the physics body transform
Check for changes internally for physics body SetPosition and SetOrientation, setting them wakes up the body and moves proxies so only set them on change
Fix isUpdatingFromPhysics not being set back to false
Don't include triggers in mass calculation, rebuild mass when trigger property changes
Fix CPhysicsShape::SetMaterial likely not rebuilding mass properly
Refresh shape contacts before and after changing tags, fixes shape collision rules not updating when proxy bounds are overlapping
Don't draw physics wireframe with alpha, it's hard to see
Add Surface.RollingResistance https://files.facepunch.com/layla/1b0811b1/sbox-dev_JICzg1spr4.mp4
Obsolete Surface.Dampening, unused, never has been
Rebuild mass when updating physics shapes (only convex shapes)
Only update collider shape on property change
Forgot to return array to pool
Fix non uniform scale sphere collider updates
Don't rely on keyframebody when updating colliders, they could be sweeping to a new position so the shape gets updated using an incorrect local transform
Try to make restitution work with soft contacts, fixes bouncy surfaces when dynamic collides with kinematic
Scaling should not be applied to NormalToLocal and NormalToWorld but happy to be proven wrong
Fixed transformation order for PointToLocal and PointToWorld, add some tests to make sure they match ToLocal and ToWorld
Serialize animation parameters if they're changed in editor https://files.facepunch.com/layla/1b0611b1/sbox-dev_paNSU6QjyT.mp4
Run animation for skinned model renderer in editor if it has any stored parameters because we want to see them
Signal values changed for float slider, OnChildValuesChanged wasn't called when moving slider
Rebuild colliders immediately instead of next update
Fix NRE setting null surface on physics body or shape, should just set to default surface internally
Fix NRE's when renaming component - some work needs to be done here though to handle renames gracefully
Mesh component center origin restores child transforms
Add all properties of mesh component to sheet, filter the ones we don't want
Use EditorWindow for FileDialog parent here, fixes component type selector crash
Deserialize replaced component with json of previous component
Add replace component to component context menu because I kept finding myself expecting it to be there https://files.facepunch.com/layla/1b0111b1/sbox-dev_GO4iCHd7Qw.mp4
Try getting local mouse position from scene viewport
Mesh component uses custom editor so it can have editor operations https://files.facepunch.com/layla/1b0111b1/explorer_oFDFsVdl1V.mp4
Add access to joints on PhysicsGroupDescription, this is needed to phase out native physics aggregates in physics components
PhysicsSpring.Maximum defaults to float max
Remove ShowPredictionErrors and EntityIO from debug menu, these aren't used anymore. Add ShowPhysicsDebug there instead so it can be toggled in scene view, not suitable to put it in viewport settings
Fix infinite loop in OnDirty, set dirty to false last
Fix OnValidate not being called on property change in editor
Prioritize FbxNode name over FbxMesh name for modeldoc mesh names - If you needed it to be the other way, blame the guy that wants it this way
Don't need to bother getting parameterless function if we're not going to use it
Allow [Change] attribute to have parameterless callback, parameter version takes priority
Add ISceneEditorSession.AddUndo