Sweep trace is not returning correct hit locations

My apologies for the late reply.

I doublechecked, and bStartPenetrating is returning true for every object in the array.

I have tried implementing UBodySetup::GetClosestPointAndNormal(), but the function is giving me a warning when being called (“LogPhysics:Warning: GetClosestPointAndNormalImpl ClosestDist for BodySetup BodySetup /Game/Geometry/Meshes/1M_Cube.1M_Cube:BodySetup_5 is coming back as FLT_MAX.”). This is how I implemented it;

FVector NewImpactPoint, NewImpactNormal;
    
if (UBodySetup* BodySetup = HitResults[HitIndex].GetComponent()->GetBodySetup())
{
BodySetup->GetClosestPointAndNormal(DamageOrigin, HitResults[HitIndex].GetComponent()->GetComponentTransform(), NewImpactPoint, NewImpactNormal);

DrawDebugPoint(DamageCauser->GetWorld(), NewImpactPoint, 20.f, FColor::Blue, false, 4.f);	
}