首先,我的问题是我不能得到一个奇怪的结果,可能应该渲染的东西,但不在 3D 空间中。
首先,我创建了 Mesh_Cube 的数组,它只是一个包含 Vector3 的类,然后我将 for 循环值传递给它们,如下所示:
cubes = new Mesh_Cube[10];
for(int x = 0; x < cubes.length; x++) {
for(int z = 0; z < cubes.length; z++) {
cubes[x] = new Mesh_Cube(new Vector3(x,0,z), new Vector3(1,0,1));
System.out.println(cubes[x].position.x + ", " + cubes[x].position.z);
//Prints out the right coordinates, in both X and Z.
}
}
然后我在 glBegin 方法的 foreach 循环中将它们全部渲染:(mc.Render() 方法,只包含要渲染的顶点,在 glBegin() 中)
for(Mesh_Cube mc : cubes) {
mc.Render();
}
我得到的最终结果是:
实际结果应该是一个网格,因为我有两个 for 循环。