public static bool convexCollision(Vector2[] aVerts, Vector2 aOrigin, Vector2[] bVerts, Vector2 bOrigin, bool closed = true, int vertNum = -1)
{
int v = 0;
if(vertNum == -1)
vertNum = aVerts.Length - 1;
if (closed)
vertNum ++;
while (v < vertNum)
{
Vector2 axis1 = vectorTo(aVerts[v], aVerts[(v+1)%aVerts.Length]);
axis1.Y *= -1;
bool axis1Collision = axisCollision(aVerts, bVerts, axis1);
if (!axis1Collision)
break;
v++;
}
//Vector2 axis2 = new Vector2(axis1.Y, -axis1.X);
//bool axis2Collision = axisCollision(aVerts, bVerts, axis2);
return v == aVerts.Length-1;
}