/Engine/Source/Developer/MeshUtilities/Public/MeshUtilities.h
The function will always fill properly the OutTangents array with 3 FVector. If the triangle is degenerated the OutTangent will contain zeroed vectors.
void CalculateTriangleTangent ( const [FSoftSkinVertex](API\Runtime\Engine\Rendering\FSoftSkinVertex) & VertexA, const [FSoftSkinVertex](API\Runtime\Engine\Rendering\FSoftSkinVertex) & VertexB, const [FSoftSkinVertex](API\Runtime\Engine\Rendering\FSoftSkinVertex) & VertexC, [TArray](API\Runtime\Core\Containers\TArray)< FVector3f > & OutTangents, float CompareThreshold )