这一篇写一下线段相交的代码 在2d游戏中可能会经常使用到 需要的朋友拿走吧
public static bool IsSegmentIntersectionWithSegment(ref Vector2 segment0Start, ref Vector2 segment0End,
ref Vector2 segment1Start, ref Vector2 segment1End)
{
Vector2 p = segment0Start;
Vector2 r = segment0End - segment0Start;
Vector2 q = segment1Start;
Vector2 s = segment1End - segment1Start;
Vector2 pq = q - p;
float rxs = r.x * s.y - r.y * s.x;
float pqxr = pq.x * r.y - pq.y * r.x;
if (IsApproximately(rxs,