如何将 polygon2D 碰撞器点存储在数组或列表中

How to store polygon2Dcollider points in an array or List

PolygonCollider2D 可以由多条路径(不仅仅是一条)组成,具体取决于应用它的精灵的形状。

我正在努力将所有这些坐标 Vector2[] 存储到一个列表中。

到目前为止,我一直在尝试访问每个路径:

             for (int p=0; p<polygon1.pathCount; p++)
         {
            polygonpoints = new Vector2[polygon1.GetPath(p).Length]; 
            polygonpoints = polygon1.GetPath(p);
            polygons.Add(polygonpoints);           
         }

其中 polygon1 是我的 PolygonCollider2D,polygonPoints 是 Vector2[]。 polygons 是声明的 List[polygon1.pathcount]

为什么我不能将这些 Vector2[] 添加到我的列表中?我做错了什么?

我相信您的列表只需要是 .

类型
//Initialize the list with each element being a Vector2[] (Vec2 array)
List<Vector2[]> polygons = new List<Vector2[]>();

polygons.Add(polygon1.points);