Skip to content

CGameCollision & CollisionUtil#42

Merged
encounter merged 3 commits intomainfrom
collision
Mar 13, 2026
Merged

CGameCollision & CollisionUtil#42
encounter merged 3 commits intomainfrom
collision

Conversation

@encounter
Copy link
Member

No description provided.

@decomp-dev
Copy link

decomp-dev bot commented Mar 13, 2026

Report for GM8E01_48 (7484777 - f7cf8aa)

No changes

Report for GM8E01_00 (7484777 - f7cf8aa)

📈 Matched code: 30.69% (+0.28%, +11412 bytes)
📈 Linked code: 18.61% (+0.03%, +1004 bytes)
📈 Matched data: 31.79% (+0.01%, +116 bytes)
📈 Linked data: 12.88% (+0.00%, +48 bytes)

✅ 38 new matches
Unit Item Bytes Before After
main/MetroidPrime/CGameCollision CGameCollision::CollisionFailsafe(const CStateManager&, CAreaCollisionCache&, CPhysicsActor&, const CCollisionPrimitive&, const rstl::reserved_vector<TUniqueId, 1024>&, float, unsigned int) +1640 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::AddAverageToFront(const CCollisionInfoList&, CCollisionInfoList&) +660 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollisionBoolean(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&) +600 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::RayTriangleIntersection_Double(const CVector3f&, const CVector3f&, const CVector3f*, double&) +584 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::Move(CStateManager&, CPhysicsActor&, float, const rstl::reserved_vector<TUniqueId, 1024>*) +564 0.00% 100.00%
main/MetroidPrime/CBallFilter CCollisionInfoList::Add(const CCollisionInfo&, bool) +520 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::RayWorldIntersection(const CStateManager&, TUniqueId&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +508 0.00% 100.00%
main/MetroidPrime/CBallFilter CollisionUtil::AccumulateCollisionInfo(const CCollisionInfoList&, CCollisionInfoList&) +484 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::CollideWithStaticBodyNoRot(CPhysicsActor&, const CMaterialList&, const CMaterialList&, const CUnitVector3f&, float, bool) +404 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::RayDynamicIntersectionBool(const CStateManager&, const CVector3f&, const CVector3f&, const CMaterialFilter&, rstl::reserved_vector<TUniqueId, 1024>, const CActor*, float) +348 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::MovePlayer(CStateManager&, CPhysicsActor&, float, const rstl::reserved_vector<TUniqueId, 1024>*) +348 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::BuildAreaCollisionCache(const CStateManager&, CAreaCollisionCache&) +324 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::RaySphereIntersection_Double(const CSphere&, const CVector3f&, const CVector3f&, double&) +312 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectDynamicCollision(const CCollisionPrimitive&, const CTransform4f&, const rstl::reserved_vector<TUniqueId, 1024>&, TUniqueId&, CCollisionInfoList&, const CStateManager&) +300 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectDynamicCollisionBoolean(const CCollisionPrimitive&, const CTransform4f&, const rstl::reserved_vector<TUniqueId, 1024>&, const CStateManager&) +272 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::FilterOutBackfaces(const CVector3f&, const CCollisionInfoList&, CCollisionInfoList&) +272 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::BoxLineTest(const CAABox&, const CVector3f&, const CVector3f&, float&, float&, int&, bool&) +268 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollision_Cached_Moving(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&, CVector3f, TUniqueId&, CCollisionInfo&, double&) +248 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::AABoxSphereIntersection(const CAABox&, const CSphere&) +244 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::AABoxSphereIntersectionRadius(const CAABox&, const CSphere&) +228 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::GetActorRelativeVelocities(const CPhysicsActor*, const CPhysicsActor*) +224 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollision(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&, TUniqueId&, CCollisionInfoList&) +192 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollision_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&, TUniqueId&, CCollisionInfoList&) +192 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollisionBoolean(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +176 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollisionBoolean_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +176 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::FilterByClosestNormal(const CVector3f&, const CCollisionInfoList&, CCollisionInfoList&) +156 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::SendMaterialMessage(CStateManager&, const CMaterialList&, CActor&) +152 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::TriSphereOverlap(const CSphere&, const CVector3f&, const CVector3f&, const CVector3f&) +80 0.00% 100.00%
main/MetroidPrime/CGameCollision rstl::reserved_vector<CCollisionInfo, 32>::reserved_vector(const rstl::reserved_vector<CCollisionInfo, 32>&) +68 0.00% 100.00%
main/MetroidPrime/CGameCollision CCollisionInfoList::CCollisionInfoList(const CCollisionInfoList&) +48 0.00% 100.00%

...and 8 more new matches

📈 39 improvements in unmatched items
Unit Item Bytes Before After
main/Collision/CollisionUtil CollisionUtil::MovingSphereAABox(const CSphere&, const CAABox&, const CVector3f&, double&, CVector3f&, CVector3f&) +3339 0.00% 89.30%
main/MetroidPrime/CGameCollision CGameCollision::MoveAndCollide(CStateManager&, CPhysicsActor&, float, const ICollisionFilter&, const rstl::reserved_vector<TUniqueId, 1024>*) +3228 0.00% 97.70%
main/Collision/CollisionUtil CollisionUtil::TriBoxOverlap(const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&) +1652 0.00% 95.17%
main/MetroidPrime/CGameCollision CGameCollision::AvoidStaticCollisionWithinRadius(const CStateManager&, CPhysicsActor&, unsigned int, float, float, float, float, float) +1557 0.00% 80.78%
main/Collision/CollisionUtil CollisionUtil::TriPointSqrDist(const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&, float*, float*) +1371 0.00% 99.99%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollision_Cached_Moving(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, CVector3f, CCollisionInfo&, double&) +1327 0.00% 92.48%
main/MetroidPrime/CGameCollision CGameCollision::CollideWithDynamicBodyNoRot(CPhysicsActor&, CPhysicsActor&, const CCollisionInfo&, float, bool) +1253 0.00% 99.19%
main/MetroidPrime/CGameCollision CGameCollision::FindNonIntersectingVector(const CStateManager&, CAreaCollisionCache&, CPhysicsActor&, const CCollisionPrimitive&, const rstl::reserved_vector<TUniqueId, 1024>&) +1169 0.00% 98.79%
main/Collision/CollisionUtil CollisionUtil::RayAABoxIntersection_Double(const CMRay&, const CAABox&, CVector3f&, double&) +1165 0.00% 97.08%
main/Collision/CollisionUtil CollisionUtil::AABox_AABox_Moving(const CAABox&, const CAABox&, const CVector3f&, double&, CVector3f&, CVector3f&) +1020 0.00% 99.62%
main/Collision/CollisionUtil CollisionUtil::RayAABoxIntersection(const CMRay&, const CAABox&, CVector3f&, float&) +1005 0.00% 92.45%
main/Collision/CollisionUtil CollisionUtil::AABoxAABoxIntersection(const CAABox&, const CMaterialList&, const CAABox&, const CMaterialList&, CCollisionInfoList&) +820 0.00% 80.43%
main/MetroidPrime/CGameCollision CGameCollision::RayStaticIntersection(const CStateManager&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&) +797 0.00% 99.65%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollision_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, CCollisionInfoList&) +781 0.00% 96.69%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollisionBoolean_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&) +725 0.00% 97.55%
main/MetroidPrime/CGameCollision CGameCollision::RayDynamicIntersection(const CStateManager&, TUniqueId&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +653 0.00% 99.57%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollision(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, CCollisionInfoList&) +635 0.00% 95.75%
main/MetroidPrime/CGameCollision CGameCollision::DetectDynamicCollisionMoving(const CCollisionPrimitive&, const CTransform4f&, const rstl::reserved_vector<TUniqueId, 1024>&, CVector3f, TUniqueId&, CCollisionInfo&, double&, const CStateManager&) +524 0.00% 99.28%
main/Collision/CollisionUtil CollisionUtil::TriSphereIntersection(const CSphere&, const CVector3f&, const CVector3f&, const CVector3f&, CVector3f&, CVector3f&) +495 0.00% 99.94%
main/MetroidPrime/CGameCollision CGameCollision::SendScriptMessages(CStateManager&, CActor&, CActor*, const CCollisionInfoList&) +449 0.00% 98.51%
main/Collision/CollisionUtil CollisionUtil::LineCircleIntersection2d(const CVector3f&, const CVector3f&, const CSphere&, int, int, float&) +435 0.00% 99.82%
main/Collision/CollisionUtil CollisionUtil::RayTriangleIntersection(const CVector3f&, const CVector3f&, const CVector3f*, float&) +421 0.00% 98.46%
main/Collision/CollisionUtil CollisionUtil::RayAABoxIntersection(const CMRay&, const CAABox&, float&, float&) +349 0.00% 99.20%
main/MetroidPrime/CGameCollision CGameCollision::MakeCollisionCallbacks(CStateManager&, CPhysicsActor&, const TUniqueId&, const CCollisionInfoList&) +307 0.00% 97.30%
main/MetroidPrime/CGameCollision CGameCollision::GetMinExtentForCollisionPrimitive(const CCollisionPrimitive&) +305 0.00% 96.65%
main/MetroidPrime/CGameCollision CGameCollision::RayStaticIntersectionBool(const CStateManager&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&) +277 0.00% 99.00%
main/MetroidPrime/CGameCollision CGameCollision::ResolveCollisions(CPhysicsActor&, CPhysicsActor*, const CCollisionInfoList&) +206 0.00% 94.00%
main/MetroidPrime/CGameCollision CGameCollision::RayStaticIntersectionArea(const CGameArea&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&) +205 0.00% 98.65%
main/Collision/CollisionUtil CollisionUtil::AABoxAABoxIntersection(const CAABox&, const CAABox&) +138 0.00% 70.78%
main/MetroidPrime/CGameCollision .data +104 0.00% 86.96%

...and 9 more improvements in unmatched items


Report for GM8E01_01 (7484777 - f7cf8aa)

📈 Matched code: 29.84% (+0.29%, +11412 bytes)
📈 Linked code: 18.64% (+0.03%, +1004 bytes)
📈 Matched data: 9.21% (+0.00%, +4 bytes)
📈 Linked data: 12.88% (+0.00%, +48 bytes)

✅ 34 new matches
Unit Item Bytes Before After
main/MetroidPrime/CGameCollision CGameCollision::CollisionFailsafe(const CStateManager&, CAreaCollisionCache&, CPhysicsActor&, const CCollisionPrimitive&, const rstl::reserved_vector<TUniqueId, 1024>&, float, unsigned int) +1640 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::AddAverageToFront(const CCollisionInfoList&, CCollisionInfoList&) +660 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollisionBoolean(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&) +600 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::RayTriangleIntersection_Double(const CVector3f&, const CVector3f&, const CVector3f*, double&) +584 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::Move(CStateManager&, CPhysicsActor&, float, const rstl::reserved_vector<TUniqueId, 1024>*) +564 0.00% 100.00%
main/MetroidPrime/CBallFilter CCollisionInfoList::Add(const CCollisionInfo&, bool) +520 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::RayWorldIntersection(const CStateManager&, TUniqueId&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +508 0.00% 100.00%
main/MetroidPrime/CBallFilter CollisionUtil::AccumulateCollisionInfo(const CCollisionInfoList&, CCollisionInfoList&) +484 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::CollideWithStaticBodyNoRot(CPhysicsActor&, const CMaterialList&, const CMaterialList&, const CUnitVector3f&, float, bool) +404 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::RayDynamicIntersectionBool(const CStateManager&, const CVector3f&, const CVector3f&, const CMaterialFilter&, rstl::reserved_vector<TUniqueId, 1024>, const CActor*, float) +348 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::MovePlayer(CStateManager&, CPhysicsActor&, float, const rstl::reserved_vector<TUniqueId, 1024>*) +348 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::BuildAreaCollisionCache(const CStateManager&, CAreaCollisionCache&) +324 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::RaySphereIntersection_Double(const CSphere&, const CVector3f&, const CVector3f&, double&) +312 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectDynamicCollision(const CCollisionPrimitive&, const CTransform4f&, const rstl::reserved_vector<TUniqueId, 1024>&, TUniqueId&, CCollisionInfoList&, const CStateManager&) +300 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectDynamicCollisionBoolean(const CCollisionPrimitive&, const CTransform4f&, const rstl::reserved_vector<TUniqueId, 1024>&, const CStateManager&) +272 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::FilterOutBackfaces(const CVector3f&, const CCollisionInfoList&, CCollisionInfoList&) +272 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::BoxLineTest(const CAABox&, const CVector3f&, const CVector3f&, float&, float&, int&, bool&) +268 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollision_Cached_Moving(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&, CVector3f, TUniqueId&, CCollisionInfo&, double&) +248 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::AABoxSphereIntersection(const CAABox&, const CSphere&) +244 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::AABoxSphereIntersectionRadius(const CAABox&, const CSphere&) +228 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::GetActorRelativeVelocities(const CPhysicsActor*, const CPhysicsActor*) +224 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollision(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&, TUniqueId&, CCollisionInfoList&) +192 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollision_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&, TUniqueId&, CCollisionInfoList&) +192 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollisionBoolean(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +176 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::DetectCollisionBoolean_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +176 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::FilterByClosestNormal(const CVector3f&, const CCollisionInfoList&, CCollisionInfoList&) +156 0.00% 100.00%
main/MetroidPrime/CGameCollision CGameCollision::SendMaterialMessage(CStateManager&, const CMaterialList&, CActor&) +152 0.00% 100.00%
main/Collision/CollisionUtil CollisionUtil::TriSphereOverlap(const CSphere&, const CVector3f&, const CVector3f&, const CVector3f&) +80 0.00% 100.00%
main/MetroidPrime/CGameCollision rstl::reserved_vector<CCollisionInfo, 32>::reserved_vector(const rstl::reserved_vector<CCollisionInfo, 32>&) +68 0.00% 100.00%
main/MetroidPrime/CGameCollision CCollisionInfoList::CCollisionInfoList(const CCollisionInfoList&) +48 0.00% 100.00%

...and 4 more new matches

📈 42 improvements in unmatched items
Unit Item Bytes Before After
main/Collision/CollisionUtil CollisionUtil::MovingSphereAABox(const CSphere&, const CAABox&, const CVector3f&, double&, CVector3f&, CVector3f&) +3339 0.00% 89.30%
main/MetroidPrime/CGameCollision CGameCollision::MoveAndCollide(CStateManager&, CPhysicsActor&, float, const ICollisionFilter&, const rstl::reserved_vector<TUniqueId, 1024>*) +3228 0.00% 97.70%
main/Collision/CollisionUtil CollisionUtil::TriBoxOverlap(const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&) +1652 0.00% 95.17%
main/MetroidPrime/CGameCollision CGameCollision::AvoidStaticCollisionWithinRadius(const CStateManager&, CPhysicsActor&, unsigned int, float, float, float, float, float) +1557 0.00% 80.78%
main/Collision/CollisionUtil CollisionUtil::TriPointSqrDist(const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&, float*, float*) +1371 0.00% 99.99%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollision_Cached_Moving(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, CVector3f, CCollisionInfo&, double&) +1327 0.00% 92.48%
main/MetroidPrime/CGameCollision CGameCollision::CollideWithDynamicBodyNoRot(CPhysicsActor&, CPhysicsActor&, const CCollisionInfo&, float, bool) +1253 0.00% 99.19%
main/MetroidPrime/CGameCollision CGameCollision::FindNonIntersectingVector(const CStateManager&, CAreaCollisionCache&, CPhysicsActor&, const CCollisionPrimitive&, const rstl::reserved_vector<TUniqueId, 1024>&) +1169 0.00% 98.79%
main/Collision/CollisionUtil CollisionUtil::RayAABoxIntersection_Double(const CMRay&, const CAABox&, CVector3f&, double&) +1165 0.00% 97.08%
main/Collision/CollisionUtil CollisionUtil::AABox_AABox_Moving(const CAABox&, const CAABox&, const CVector3f&, double&, CVector3f&, CVector3f&) +1020 0.00% 99.62%
main/Collision/CollisionUtil CollisionUtil::RayAABoxIntersection(const CMRay&, const CAABox&, CVector3f&, float&) +1005 0.00% 92.45%
main/Collision/CollisionUtil CollisionUtil::AABoxAABoxIntersection(const CAABox&, const CMaterialList&, const CAABox&, const CMaterialList&, CCollisionInfoList&) +820 0.00% 80.43%
main/MetroidPrime/CGameCollision CGameCollision::RayStaticIntersection(const CStateManager&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&) +797 0.00% 99.65%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollision_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, CCollisionInfoList&) +781 0.00% 96.69%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollisionBoolean_Cached(const CStateManager&, CAreaCollisionCache&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&) +725 0.00% 97.55%
main/MetroidPrime/CGameCollision CGameCollision::RayDynamicIntersection(const CStateManager&, TUniqueId&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&, const rstl::reserved_vector<TUniqueId, 1024>&) +653 0.00% 99.57%
main/MetroidPrime/CGameCollision CGameCollision::DetectStaticCollision(const CStateManager&, const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, CCollisionInfoList&) +635 0.00% 95.75%
main/MetroidPrime/CGameCollision CGameCollision::DetectDynamicCollisionMoving(const CCollisionPrimitive&, const CTransform4f&, const rstl::reserved_vector<TUniqueId, 1024>&, CVector3f, TUniqueId&, CCollisionInfo&, double&, const CStateManager&) +524 0.00% 99.28%
main/Collision/CollisionUtil CollisionUtil::TriSphereIntersection(const CSphere&, const CVector3f&, const CVector3f&, const CVector3f&, CVector3f&, CVector3f&) +495 0.00% 99.94%
main/MetroidPrime/CGameCollision CGameCollision::SendScriptMessages(CStateManager&, CActor&, CActor*, const CCollisionInfoList&) +449 0.00% 98.51%
main/Collision/CollisionUtil CollisionUtil::LineCircleIntersection2d(const CVector3f&, const CVector3f&, const CSphere&, int, int, float&) +435 0.00% 99.82%
main/Collision/CollisionUtil CollisionUtil::RayTriangleIntersection(const CVector3f&, const CVector3f&, const CVector3f*, float&) +421 0.00% 98.46%
main/Collision/CollisionUtil CollisionUtil::RayAABoxIntersection(const CMRay&, const CAABox&, float&, float&) +349 0.00% 99.20%
main/MetroidPrime/CGameCollision CGameCollision::MakeCollisionCallbacks(CStateManager&, CPhysicsActor&, const TUniqueId&, const CCollisionInfoList&) +307 0.00% 97.30%
main/MetroidPrime/CGameCollision CGameCollision::GetMinExtentForCollisionPrimitive(const CCollisionPrimitive&) +305 0.00% 96.65%
main/MetroidPrime/CGameCollision CGameCollision::RayStaticIntersectionBool(const CStateManager&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&) +277 0.00% 99.00%
main/MetroidPrime/CGameCollision CGameCollision::ResolveCollisions(CPhysicsActor&, CPhysicsActor*, const CCollisionInfoList&) +206 0.00% 94.00%
main/MetroidPrime/CGameCollision CGameCollision::RayStaticIntersectionArea(const CGameArea&, const CVector3f&, const CVector3f&, float, const CMaterialFilter&) +205 0.00% 98.65%
main/Collision/CollisionUtil CollisionUtil::AABoxAABoxIntersection(const CAABox&, const CAABox&) +138 0.00% 70.78%
main/MetroidPrime/CGameCollision .data +104 0.00% 86.96%

...and 12 more improvements in unmatched items

@encounter encounter merged commit a3de68f into main Mar 13, 2026
6 checks passed
@encounter encounter deleted the collision branch March 13, 2026 07:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant