浅浅记录一下在写c#脚本过程中遇到的一个实例化问题
在编写中,本想着使用Vector3类创建一个三维矩形数组来储存地图中的一些位置,代码如下
public static int R =3, C=5, R1=3, C1=3;
public static Vector3[ , , ] Points;
for (int y = 9 - C1; y > 9 - m * R - C1;y = y - m)
{
for (int x = -17 + R1; x < -17 + n * C + R1; x= x + n )
{
for(int i = 0;i < R; i++)
{
for(int j = 0; i < C; j++)
{
Points[i, j, 0] = new Vector3 (x, y, 0);
Points[i, j, 1] = new Vector3 (x+1, y, 0);
Points[i, j, 2] = new Vector3 (x, y-1, 0);
Points[i, j, 3] = new Vector3 (x+1, y-1, 0);
}
}
}
}
但是发现我只声明了Vector3数组,并没有实例化,导致脚本在unity中运行时出错
解决这个问题的关键就是要在数组声明的同时进行实例化
public static int R =3, C=5, R1=3, C1=3;
public static Vector3[ , , ] turnPoints=new Vector3[R, C, 4];
然后就不会报错了