atm959

New Mesh-Generation Code

May 28th, 2019
492
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.32 KB | None | 0 0
  1. void generateWorldMesh() {
  2.     vertices.clear();
  3.     for (int x = 0; x < SIZE; x++) {
  4.         for (int y = 0; y < 7; y++) {
  5.             for (int z = 0; z < SIZE; z++) {
  6.                 if (blocks[x][y][z] != 0) {
  7.                     if (z != 0) {
  8.                         if (blocks[x][y][z - 1] == 0) {
  9.                             insertFace(x, y, z, 0, blocks[x][y][z]);
  10.                         }
  11.                     } else {
  12.                         insertFace(x, y, z, 0, blocks[x][y][z]);
  13.                     }
  14.                     if (z != (SIZE - 1)) {
  15.                         if (blocks[x][y][z + 1] == 0) {
  16.                             insertFace(x, y, z, 1, blocks[x][y][z]);
  17.                         }
  18.                     } else {
  19.                         insertFace(x, y, z, 1, blocks[x][y][z]);
  20.                     }
  21.                     if (x != 0) {
  22.                         if (blocks[x - 1][y][z] == 0) {
  23.                             insertFace(x, y, z, 2, blocks[x][y][z]);
  24.                         }
  25.                     } else {
  26.                         insertFace(x, y, z, 2, blocks[x][y][z]);
  27.                     }
  28.                     if (x != (SIZE - 1)) {
  29.                         if (blocks[x + 1][y][z] == 0) {
  30.                             insertFace(x, y, z, 3, blocks[x][y][z]);
  31.                         }
  32.                     } else {
  33.                         insertFace(x, y, z, 3, blocks[x][y][z]);
  34.                     }
  35.                     if (y != 7) {
  36.                         if (blocks[x][y + 1][z] == 0) {
  37.                             insertFace(x, y, z, 4, blocks[x][y][z]);
  38.                         }
  39.                     } else {
  40.                         insertFace(x, y, z, 4, blocks[x][y][z]);
  41.                     }
  42.                     if (y != 0) {
  43.                         if (blocks[x][y - 1][z] == 0) {
  44.                             insertFace(x, y, z, 5, blocks[x][y][z]);
  45.                         }
  46.                     } else {
  47.                         insertFace(x, y, z, 5, blocks[x][y][z]);
  48.                     }
  49.                 }
  50.             }
  51.         }
  52.     }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment