我写了一个函数,可以从Unity3d中的网格中获取三角形,但是我得到一个“数组超出范围”的错误。这是功能:Unity3D:数组超出范围
static Vector3[,] CreateTriangles(Mesh _mesh)
{
// In this function I make an 2d array and then I store the triangles in there.
int TTriangleAmount = _mesh.triangles.Length/3;
int TTrianglePoints = _mesh.triangles.Length;
int TTriangleSize = 3;
Vector3[,] TTriangleArray = new Vector3[TTriangleAmount,TTriangleSize];
for(int i = 0; i < TTrianglePoints ; i += TTriangleSize)
{
TTriangleArray[i,0] = _mesh.vertices[_mesh.triangles[i + 0]];
TTriangleArray[i,1] = _mesh.vertices[_mesh.triangles[i + 1]];
TTriangleArray[i,2] = _mesh.vertices[_mesh.triangles[i + 2]];
}
return TTriangleArray;
}
我似乎无法找出它为什么超出范围。任何人都可以看到我犯的缺陷吗?
在此先感谢!