public virtual void LoadBlock(MeshData d, WorldGeneration w) { Vector3 o = worldPosition; MeshUtilities.FaceUp(d, o); Block n = w.GetBlock(x, y, z + 1); if (n == null || !n.isSolid) { MeshUtilities.FaceNorth(d, o); } Block s = w.GetBlock(x, y, z - 1); if (s == null || !s.isSolid) { MeshUtilities.FaceSouth(d, o); } Block we = w.GetBlock(x - 1, y, z); if (we == null || !we.isSolid) { MeshUtilities.FaceWest(d, o); } Block e = w.GetBlock(x + 1, y, z); if (e == null || !e.isSolid) { MeshUtilities.FaceEast(d, o); } }