3,507 Commits over 1,308 Days - 0.11cph!
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
Only destroy aggregate in SetupPhysicsFromUnscaledModel if we're not already SOLID_VPHYSICS - avoids recreating the aggregate when we shouldn't need to
Add command line switch to change physics module
Disable collision for kinematics for now, many intersecting kinematics (server side bodies on client) seem to be completely fucking up the simulation, causing everything to fall through world https://files.facepunch.com/layla/1b0711b1/sbox_0061_Trim.mp4