4,383 Commits over 1,583 Days - 0.12cph!
Do sphere and bounds shape overlap tests properly by copying how testbed does shape casts
Sphere query will perform a shape overlap if we're testing for shapes and not proxies https://files.facepunch.com/layla/1b0711b1/sbox_0048.mp4
Add sphere query to dynamic tree
World sphere query (needs testing)
AddBoxShape and AddHullShape that C# use
Get rid of UTIL_TraceModel
CastRaySingleBody, CastSphereSingleBody, CastBoxSingleBody, probably not fully correct but only markup volume uses it and we'll probably get rid of this
Remove some unused cast functions from interface
Delete our joints and shapes before removing body from world
Remove shape from body and remove body from world checks if it owns them first
World query (cos mixed shadows uses it)
Disable shadows on debug rendering
Get cast result surface properties from hit shape material
Shape GetInertiaProperties (overkill? Only CModelPreviewPhysicsShape uses it)
Adding/removing tags on shapes collision attributes until we know how this fits into the filtering system
Aggregate SetCollisionAttributesFromResource and SetTotalMass
Setup the callbacks for contact modify and end
Prismatic joint from desc
Spring joint from desc
Port spring joint from rubikon https://files.facepunch.com/layla/1b0611b1/sbox_0041.mp4
Remove World StepCollision and GetSimulationTimeElapsed, doubt these are needed anymore
Body and Shape SetMaterialIndex
World GetBody by index
Remove legacy objectparams_t stuff
Calculate collision impact forces to give the same results we currently get
Another big interface cleanup
Disable rendering of debug scene objects when debug rendering is disabled
Shape set material (density, friction, restitution)
Aggregate set surface properties
Set shape material when building aggregate
Collision events with bullshit impact strength until this can be calculated properly
Don't enable joint collision by default
Fix mesh shape debug drawing https://files.facepunch.com/layla/1b0411b1/sbox-dev_Iu61effQRf.png
Create debug scene objects for edges
Delete debug sceneobjects when we're done with them
GetLocalInertiaOrientation, GetLocalInertiaVector
Another big interface cleanup
FindClosestPointOnConvexShapes using gjk
Aggregate GetBbox and GetBboxFromProxies
Hook up some debug drawing https://files.facepunch.com/layla/1b0311b1/sbox_0018.mp4
Add revolute joint from desc
Spherical and conical from desc (both the same for now because the only difference should be limits)
Use aligned alloc in dynamic tree, fixes crash in vLoad3A
Add pre and post solve callbacks
ApplyLinearImpulseAtWorldSpace, GetMassCenter
Remove static and active aggregates when destroying aggregate
Get active body list for active aggregates
Don't wake up statics, otherwise do a forced wakeup (bug in library where a body can be awake but not in the active list?)
Don't create hull for CastBoxSingle, it only needs to know the 8 corner verts
CastRaySingle, CastSphereSingle
Add weld joint from desc
CastBoxSingle
Clamp sphere and capsule radius to linear slop
Set UNITS_PER_METER to 40
Build bodies and shapes for aggregate
SetAggregateInstance and SetGameSceneNodeHandle
Gather active aggregates to build the awake step results
When building aggregate bodies, add body, set motion type THEN set transform, otherwise it gets stuck in a weird deactivated state
Protocol::Network++ Complaints of CEnvCubemap invalid class index
C# prop_static, this isn't a game spawnable entity, just a way to get prop_static out of fgd
Oog cubemap fog (#1288)
Cubemap fog properties on camera, C# env_cubemap_fog
CubemapFogController struct to class
Internal cubemap write
Summaries
remove native cubemap fog