3,985 Commits over 1,461 Days - 0.11cph!
Add Sound.Play with mixer, this is common enough to justify adding it
Add Sqrt shader node
Fix shadergraph save shortcut breaking after keybinds merge
Add volume to VideoPlayer.Audio
Dispose sound handle before deleting managed audio source
It's probably wise to dispose the sound handle of video player when we're done with it
Allow videoplayer audio to set target mixer
Make sure audio plays for video player when playing through URL. Add audio accessor to video player to configure audio playback
Shadergraph: Add toolbar option to open generated shader
Create bone objects for all bones, don't try to filter them out - we just need a better way of filtering out "unimportant" bones for the bone gizmos
Unmount tagged "game" fixes maps never getting unmounted and then causing them to not be symlinked next load
Map objects grab scale from "scales" keyvalue
Don't need to change ext here, it's done in CreateWorld
Fix little mistake in FindInPhysics
Allow traces to ignore static/dynamic/keyframed bodies
Fix mesh trace fraction, causing incorrect best result when tracing render meshes and physics world at same time
Fix scene mesh block tool not working on terrain, just ignore box drag when bounding box gizmo is pressed
Use is valid checks in rigidbody
Fix index out of range accessing backing data collision attributes
Apply aggregate tags in C# instead of this massive inline bind function
PhysicsGroupDescription grabs physics tags from aggregate backing data so they can be string token cached. This allows trace result tags to be valid because they'll be reversable by string token
Set collision attributes on map instance collision shapes, I missed this out when switching from native aggregate instances
Restore skeleton compile to how it used to be, we're missing optimizations by just keeping every bone no matter what
Fix bug in capsule tracing, fixes picker in modeldoc when using capsules
Fix errors when first creating terrain, make sure it's all updated, don't render without storage
Only recreate clipmap if we have to, this takes time to build
Wake touching when disabling a body, why would we not want to?
Some games rely on map having a collider
CollisionEventSystem has less reliance on Collider
MapInstance uses SceneMap instead of Map so it can manage it's own collision. Build collision from physics group desc instead of using CreateAggregateInstance
Fix map collider destroying body when it shouldn't, causing a crash when map physics aggregate is destroyed
Don't allow zero quaternion in body transform, check against quat zero and use identity, if we find more invalid quaternions there's extra checks we can do
Use IsValid checks in AddShapeCollision, shape/body might have been removed from under us
Recreate mesh shape on update, this is the safe option until we get proper fixes
Clear triangle cache on mesh update to stop crashes until we get the proper fix
Range check UpdateMesh on the C# side instead so the user knows they fucked it
Do the same for UpdateMeshShape because this is likely where the crash is coming from (grubs)
Check BVH indexing outside of vertex list, if this is still getting hit then something else is at fault
Assert and bail when trying to set physics body to invalid transform
Don't allow mesh shapes to generate contacts on sensors
Oops, delta needs to be transformed by the rotation not the transform
Fix CastShapeAgainstShape for AABB
Fix physics builder stomping physics tags with material tags, they should just append
Support terrain collision holes (Use I8 instead of A8 image format for hole map), still need to refresh contacts on dirty though https://files.facepunch.com/layla/1b2111b1/sbox-dev_60iyvuYQ7S.mp4
Hull collider can be updated without recreating the physics shape
Use MakeDirty for model collider
Sphere collider can be resized without recreating the physics shape
Capsule collider can be resized without recreating the physics shape
Add internal functions for updating spheres, capsules and hulls
Plane collider can be resized without recreating the physics shape
Move this internal resize attribute to collider so I can make use of it for all the other colliders
Rebuild or update collider if they're a child of the rigidbody object and their local transform changed https://files.facepunch.com/layla/1b2111b1/sbox-dev_UFKO9q1Mrr.mp4
Fix hitbox adding box shape twice the size
Improve flatten tool, first stroke saves a plane to trace against to get flatten height and uv https://files.facepunch.com/layla/1b2011b1/sbox-dev_KIb8siErec.mp4