//计算虚拟相机区域 private void CalcCMArea(DragCameraCom dragCameraCom, MapArea mapArea) { PolygonCollider2D collider2D = mapArea.GetCameraCollider(); Vector2[] points = collider2D.GetPoints(); Vector2 areaMin = points[0]; Vector2 areaMax = points[0]; for (int i = 1; i < points.Length; i++) { Vector2 tPoint = points[i]; if (tPoint.x <= areaMin.x) { areaMin.x = tPoint.x; } if (tPoint.x >= areaMax.x) { areaMax.x = tPoint.x; } if (tPoint.y <= areaMin.y) { areaMin.y = tPoint.y; } if (tPoint.y >= areaMax.y) { areaMax.y = tPoint.y; } } dragCameraCom.CMArea.AABBMin = areaMin; dragCameraCom.CMArea.AABBMax = areaMax; }