/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/GJK.h
NOTE: OutPenetration is the penetration including the Thickness (i.e., the actual penetration depth), but the closest points returned are on the core shapes (i.e., ignoring the Thickness). If you want the closest positions on the shape surface (including the Thickness) useGJKPenetration().
namespace Chaos { template<bool bNegativePenetrationAllowed, typename T, typename TGeometryA, typename TGeometryB> bool Chaos::GJKPenetration ( const TGeometryA & A, const TGeometryB & B, const [TRigidTransform](API\Runtime\Chaos\Chaos\TRigidTransform)< T, 3 > & BToATM, T & OutPenetration, [TVec3](API\Runtime\ChaosCore\Chaos\TVec3)< T > & OutClosestA, [TVec3](API\Runtime\ChaosCore\Chaos\TVec3)< T > & OutClosestB, [TVec3](API\Runtime\ChaosCore\Chaos\TVec3)< T > & OutNormal, int32 & OutClosestVertexIndexA, int32 & OutClosestVertexIndexB, const T InThicknessA, const T InThicknessB, const [TVector](API\Runtime\Chaos\Chaos\TVector)< T, 3 > & InitialDir, const T Epsilon ) }