4,312 Commits over 1,552 Days - 0.12cph!
SetLinearVelocity and SetAngularVelocity ignore unreasonable values, also warn the user about it - this was breaking the physics simulation
Animgraph: Set new parameter defaults for networked and predicted based on network settings. ServerAuthoritative: networked, not predicted. ClientPredicted: networked, predicted
Use PhysicsHullFile for trashcan now we know tunneling issues were caused by suboptimal hull from PhysicsHullFromRender
Modeldoc: Change PhysicsHullFromRender default simplification algo to IFR instead of IVR, meant to give better results
Add Vector3.SmoothDamp
Add Rotation.SmoothDamp
Delete junk vtex_c files in industrial_strip_light and do a recompile of the materials
SetupPhysicsFromOBB computes orthographic areas and calculates mass, fixes some large custom models from destroying the physics engine
Revert "Fix prediction not being turned off on physics enabled entities"
This reverts commit 3f96e29c154feba32031430911f25ec88c4108e4.
Fix prediction not being turned off on physics enabled entities
Fix some small annoyances with move helper
Fix material browser asset window crashing when selecting "show hidden assets"
Animgraph: Only hide dock widgets that aren't floating when entering fullscreen mode
Inherit collision attributes of first shape on a body when adding new ones dynamically
Always override loop settings, we don't care about loop settings in the wav file
Animgraph: Do a fully copy of parameter properties
Backport cleaned physics interrface (sorry for rebuild times)
Add back Stop and Dispose to SoundStream but obsolete them, use Delete instead
Change soundstream to use managed handles, should be safer and gives us a chance to call back to managed to feed in audio data
Add back audiostream.default, some games were relying on this
Also copy over default value and network mode
Animgraph: Add duplicate action to parameters
Add constructor for SceneSunLight
Initialize pose morph weights to zero, somewhere isn't setting them when using base model feature
Add Client.VoiceStereo to control if voice chat is played in 3d or 2d
Call OnVoicePlayed before sound is output to give users a chance to tell the client how the voice should be played
Add LinearDamping and AngularDamping to PhysicsGroup
Add MassScale, LinearDamping, AngularDamping to prop_physics
Lower the density of hulls for now, they're way too heavy
some file renames for vphysics2 module to keep that tidy too
Rename IVPhysics2World to IPhysicsWorld
Rename IVPhysics2 to IPhysicsSystem
Rename g_pVPhysics2 to g_pPhysicsSystem
Build aggregate constraints
Debug draw constraints https://files.facepunch.com/layla/1b0911b1/sbox_0088.mp4
Use distance constraint for weld joint for now so physgun sort of works, I don't think jolt weld is a soft constraint - https://files.facepunch.com/layla/1b0911b1/sbox_0081.mp4
Create new joints so game has valid joint handles
Remove GetLocalInertiaInv
Impl GetBodyTransform for aggregate
PhysicsWorld::AddBody creates body with empty mutable compound shape, mostly to stop game complaining about invalid bodies
Only destroy jolt bodies that are ready to be deleted. Make sure to call ReadyDelayedDeleteObjects in ClearIntersectionNotifications
Move client side kinematics (UpdateShadow, but we don't have shadows yet)
Remove GetPhysicalMassInv
Do the delayed delete shit instead of deleting straight away
Remove even more junk from the interfaces
Remove ApplyPositionImpulseAt, ApplyOrienationOmega
Return normal for CastRaySingle https://files.facepunch.com/layla/1b0911b1/sbox_0049.mp4
CastRaySingle
SetGameSceneNodeHandle, GetGameSceneNodeHandle, GetEntityID - https://files.facepunch.com/layla/1b0811b1/sbox_0003.mp4
Linear and angular damping
Add step listener to call PrePhysicsStep
Impl parts of physicsaggregate that are not api specific
Impl DestroyAggregateInstance, RemoveBody etc