public Chunk(Vector3i pos, World world, Game game) { this.chunkPosition = new Vector3i(pos.x, pos.y, pos.z); vbo = new VboGroup(game); fileName = world.directory + "\\chunk_" + chunkPosition.getSafeString()+".chunk"; bool loaded = false; if (File.Exists(fileName)) { loaded = load(); } if (!loaded) { generate(game, world); save(); Console.WriteLine("Generate Chunk"); } else { Console.WriteLine("Loaded Chunk"); } this.world = world; }
public void addToVbo(World world, Chunk chunk, VboGroup vbo, int x, int y, int z) { if (!flags.HasFlag(BlockFlags.invisible)) { vbo.addCube(new Vector3(x - .5f, y - .5f, z - .5f), new Vector3(x + .5f, y + .5f, z + .5f), sidesToRender(chunk, world, x, y, z), new Vector4[]{new Vector4(1, 1, 1, 1)}, textureCoords); } }