我有这个方法包含对Array.Sort()
的调用,其中包含一个自定义比较委托,以便靠近3d矢量对它们进行排序;
GameObject[] GetGrabbableObjects(Vector3 SortedByClosestPoint)
{
GameObject[] Grabbables = GameObject.FindGameObjectsWithTag("Grabbable");
Array.Sort(Grabbables, delegate (Vector3 A, Vector3 B) { return (SortedByClosestPoint - A).magnitude.CompareTo((SortedByClosestPoint - B).magnitude); });
}
即使我非常确定我正确地编写了参数,但Visual Studio在代理Cannot convert anonymous method to type 'Array' because it is not a delegate type
上给出了一个错误,好像它正在尝试使用不同的重载。
是的,这是一个统一的脚本,但这似乎与C#相比,而不是Unity
编辑:对不起伙计们,错误的数据类型。代表应该使用两个GameObjects
而不是两个Vector3
。