This document lists all breaking API changes by date and by release tag.
20220517 - When constructing a FixedConstraint you now need to call FixedConstraintSettings::SetPoint to configure the point where the bodies attach (4f7c925c31)
20220516 - Constraint::GetType was renamed to GetSubType, a new GetType function was introduced (3e2151a009)
20220516 - Binary serialization format changed, ensure that any content saved using SaveBinaryState is recreated (3e2151a009)
20220510 - Factory::sInstance must now be allocated by the application prior to calling RegisterTypes() and has changed to a pointer (3ca62973da)
20220503 - Unused function SerializableObject::OnLoaded was removed (388d47254a)
20220502 - ContactConstraintManager::CombineFunction has additional parameters: the SubShapeIDs from both bodies (6b87356373)
20220415 - Removed Body::GetDebugName / SetDebugName, keep this info in a lookaside table if you need it (6db4d3beac)
20220406 - Renamed CollisionDispatch::sCastShapeVsShape to sCastShapeVsShapeLocalSpace (6ba21f50dc)
20220327 - Changed the default include path, #include must be replaced by #include (06e9d17d38)
20220303 - When constructing a SliderConstraint you now need to call SliderConstraintSettings::SetPoint to configure the point where the bodies attach (5a327ec182)
20220228 - PointConstraint::mCommonPoint is now mPoint1 / mPoint2 (066dfb8940)
20220226 - ObjectToBroadPhaseLayer and BroadPhaseLayerToString changed to BroadPhaseLayerInterface, this makes mapping a broadphase layer to an object layer more flexible (36dd3f8c8c)
20220222 - Shape and body user data changed from uint32 to uint64 (14e062ac96)
No breaking changes.
20220107 - PhysicsSettings::mBodyPairCacheCosMaxDeltaRotation was renamed to mBodyPairCacheCosMaxDeltaRotationDiv2
20211219 - Now storing 3 components for a Vec3 instead of 4, this breaks content saved with SaveBinaryState (23c1b9d902)
20211212 - Removed StatCollector (92a117e0f0)
20210711 - HeightFieldShapeSettings::mBlockSize is subdivided one more time at run-time, so this is effectively 2x the block size (2aa3b443bf)
20211106 - Mutex class now has its own implementation on Platform Blue, users must implement the JPH_PLATFORM_BLUEMUTEX* functions (a61dc67503)
20211019 - ShapeCast::mShape no longer keeps a reference, the caller is responsible for keeping the reference now (e2bbdda911)
20211004 - Removed RTTI from Shape class, use Shape::GetType / GetSubType now (6d5cafd535)
20210930 - Changed RestoreMaterialState and RestoreSubShapeState to use pointers instead of vectors to allow loading shapes with fewer memory allocations (b8953791f3)
20210918 - PhysicsSystem::Init takes an extra parameter to specify the amount of mutexes to use (ef371411af)
20210827 - BroadPhaseLayerPairFilter was changed to ObjectVsBroadPhaseLayerFilter to avoid testing too many layers during collision queries (33883574bb)