--- /dev/null
+uniform_block = {
+ bounds = Cuboid([ -0.5, -0.5, -0.5 ], [ 0.5, 0.5, 0.5 ]);
+ vertices = {
+ // position normal texture
+ { [ -0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 0, 1 ], 0 }, // front
+ { [ 0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.5, 0.5 ], [ 0, 0, 1 ], [ 0, 0 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 0, 0, 1 ], [ 1, 0 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 1 ], 0 }, // back
+ { [ -0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 0, 0 ], 0 }, // top
+ { [ -0.5, 0.5, 0.5 ], [ 0, 1, 0 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 0, 1, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 1, 0 ], 0 }, // bottom
+ { [ 0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 1, 1 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 0, 1 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [-1, 0, 0 ], [ 0, 1 ], 0 }, // left
+ { [ -0.5, -0.5, 0.5 ], [-1, 0, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [-1, 0, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.5, 0.5 ], [-1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 1 ], 0 }, // right
+ { [ 0.5, 0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 1, 0, 0 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 1, 0, 0 ], [ 0, 0 ], 0 },
+ };
+ indices = {
+ 0, 1, 2, 2, 1, 3, // front
+ 4, 5, 6, 6, 5, 7, // back
+ 8, 9, 10, 10, 9, 11, // top
+ 12, 13, 14, 14, 13, 15, // bottom
+ 16, 17, 18, 18, 17, 19, // left
+ 20, 21, 22, 22, 21, 23, // right
+ };
+ fill = [ true, true, true, true, true, true ];
+};
+
+uniform_low_slab = {
+ bounds = Cuboid([ -0.5, -0.5, -0.5 ], [ 0.5, 0.0, 0.5 ]);
+ vertices = {
+ // TODO: fix tex coords
+ // position normal texture
+ { [ -0.5, -0.5, 0.0 ], [ 0, 0, 1 ], [ 0, 1 ], 0 }, // front
+ { [ 0.0, -0.5, 0.0 ], [ 0, 0, 1 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.0, 0.0 ], [ 0, 0, 1 ], [ 0, 0 ], 0 },
+ { [ 0.0, 0.0, 0.0 ], [ 0, 0, 1 ], [ 1, 0 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 1 ], 0 }, // back
+ { [ -0.5, 0.0, -0.5 ], [ 0, 0, -1 ], [ 1, 0 ], 0 },
+ { [ 0.0, -0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 1 ], 0 },
+ { [ 0.0, 0.0, -0.5 ], [ 0, 0, -1 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.0, -0.5 ], [ 0, 1, 0 ], [ 0, 0 ], 0 }, // top
+ { [ -0.5, 0.0, 0.0 ], [ 0, 1, 0 ], [ 0, 1 ], 0 },
+ { [ 0.0, 0.0, -0.5 ], [ 0, 1, 0 ], [ 1, 0 ], 0 },
+ { [ 0.0, 0.0, 0.0 ], [ 0, 1, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 1, 0 ], 0 }, // bottom
+ { [ 0.0, -0.5, -0.5 ], [ 0, -1, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, -0.5, 0.0 ], [ 0, -1, 0 ], [ 1, 1 ], 0 },
+ { [ 0.0, -0.5, 0.0 ], [ 0, -1, 0 ], [ 0, 1 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [-1, 0, 0 ], [ 0, 1 ], 0 }, // left
+ { [ -0.5, -0.5, 0.0 ], [-1, 0, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.0, -0.5 ], [-1, 0, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.0, 0.0 ], [-1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.0, -0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 1 ], 0 }, // right
+ { [ 0.0, 0.0, -0.5 ], [ 1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.0, -0.5, 0.0 ], [ 1, 0, 0 ], [ 0, 1 ], 0 },
+ { [ 0.0, 0.0, 0.0 ], [ 1, 0, 0 ], [ 0, 0 ], 0 },
+ };
+ indices = {
+ 0, 1, 2, 2, 1, 3, // front
+ 4, 5, 6, 6, 5, 7, // back
+ 8, 9, 10, 10, 9, 11, // top
+ 12, 13, 14, 14, 13, 15, // bottom
+ 16, 17, 18, 18, 17, 19, // left
+ 20, 21, 22, 22, 21, 23, // right
+ };
+ fill = [ false, true, false, false, false, false ];
+};
+
+uniform_stair = {
+ bounds = Stair([ -0.5, -0.5, -0.5 ], [ 0.5, 0.5, 0.5 ], [ 0, 0 ]);
+ vertices = {
+ // position normal texture
+ { [ -0.5, 0.0, 0.0 ], [ 0, 0, 1 ], [ 0.0, 0.5 ], 0 }, // front, upper
+ { [ 0.5, 0.0, 0.0 ], [ 0, 0, 1 ], [ 1.0, 0.5 ], 0 },
+ { [ -0.5, 0.5, 0.0 ], [ 0, 0, 1 ], [ 0.0, 0.0 ], 0 },
+ { [ 0.5, 0.5, 0.0 ], [ 0, 0, 1 ], [ 1.0, 0.0 ], 0 },
+ { [ -0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 0.0, 1.0 ], 0 }, // front, lower
+ { [ 0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 1.0, 1.0 ], 0 },
+ { [ -0.5, 0.0, 0.5 ], [ 0, 0, 1 ], [ 0.0, 0.5 ], 0 },
+ { [ 0.5, 0.0, 0.5 ], [ 0, 0, 1 ], [ 1.0, 0.5 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 1.0, 1.0 ], 0 }, // back
+ { [ -0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 1.0, 0.0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 0.0, 1.0 ], 0 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 0.0, 0.0 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 0.0, 0.0 ], 0 }, // top, upper
+ { [ -0.5, 0.5, 0.0 ], [ 0, 1, 0 ], [ 0.0, 0.5 ], 0 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 1.0, 0.0 ], 0 },
+ { [ 0.5, 0.5, 0.0 ], [ 0, 1, 0 ], [ 1.0, 0.5 ], 0 },
+ { [ -0.5, 0.0, 0.0 ], [ 0, 1, 0 ], [ 0.0, 0.5 ], 0 }, // top, lower
+ { [ -0.5, 0.0, 0.5 ], [ 0, 1, 0 ], [ 0.0, 1.0 ], 0 },
+ { [ 0.5, 0.0, 0.0 ], [ 0, 1, 0 ], [ 1.0, 0.5 ], 0 },
+ { [ 0.5, 0.0, 0.5 ], [ 0, 1, 0 ], [ 1.0, 1.0 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 1.0, 0.0 ], 0 }, // bottom
+ { [ 0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 0.0, 0.0 ], 0 },
+ { [ -0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 1.0, 1.0 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 0.0, 1.0 ], 0 },
+ { [ -0.5, 0.0, -0.5 ], [ -1, 0, 0 ], [ 0.0, 0.5 ], 0 }, // left, upper
+ { [ -0.5, 0.0, 0.0 ], [ -1, 0, 0 ], [ 0.5, 0.5 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [ -1, 0, 0 ], [ 0.0, 0.0 ], 0 },
+ { [ -0.5, 0.5, 0.0 ], [ -1, 0, 0 ], [ 0.5, 0.0 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ -1, 0, 0 ], [ 0.0, 1.0 ], 0 }, // left, lower
+ { [ -0.5, -0.5, 0.5 ], [ -1, 0, 0 ], [ 1.0, 1.0 ], 0 },
+ { [ -0.5, 0.0, -0.5 ], [ -1, 0, 0 ], [ 0.0, 0.5 ], 0 },
+ { [ -0.5, 0.0, 0.5 ], [ -1, 0, 0 ], [ 1.0, 0.5 ], 0 },
+ { [ 0.5, 0.0, -0.5 ], [ 1, 0, 0 ], [ 1.0, 0.5 ], 0 }, // right, upper
+ { [ 0.5, 0.5, -0.5 ], [ 1, 0, 0 ], [ 1.0, 0.0 ], 0 },
+ { [ 0.5, 0.0, 0.0 ], [ 1, 0, 0 ], [ 0.5, 0.5 ], 0 },
+ { [ 0.5, 0.5, 0.0 ], [ 1, 0, 0 ], [ 0.5, 0.0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 1, 0, 0 ], [ 1.0, 1.0 ], 0 }, // right, lower
+ { [ 0.5, 0.0, -0.5 ], [ 1, 0, 0 ], [ 1.0, 0.5 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 1, 0, 0 ], [ 0.0, 1.0 ], 0 },
+ { [ 0.5, 0.0, 0.5 ], [ 1, 0, 0 ], [ 0.0, 0.5 ], 0 },
+ };
+ indices = {
+ 0, 1, 2, 2, 1, 3, // front, upper
+ 4, 5, 6, 6, 5, 7, // front, lower
+ 8, 9, 10, 10, 9, 11, // back
+ 12, 13, 14, 14, 13, 15, // top, upper
+ 16, 17, 18, 18, 17, 19, // top, lower
+ 20, 21, 22, 22, 21, 23, // bottom
+ 24, 25, 26, 26, 25, 27, // left, upper
+ 28, 29, 30, 30, 29, 31, // left, lower
+ 32, 33, 34, 34, 33, 35, // right, upper
+ 36, 37, 38, 38, 37, 39, // right, lower
+ };
+ fill = [ false, true, false, false, false, true ];
+};
+
+pipe_block = {
+ bounds = Cuboid([ -0.5, -0.5, -0.5 ], [ 0.5, 0.5, 0.5 ]);
+ vertices = {
+ // position normal texture
+ { [ -0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 0, 1 ], 0 }, // front
+ { [ 0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.5, 0.5 ], [ 0, 0, 1 ], [ 0, 0 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 0, 0, 1 ], [ 1, 0 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 1 ], 0 }, // back
+ { [ -0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 0, 0 ], 1 }, // top
+ { [ -0.5, 0.5, 0.5 ], [ 0, 1, 0 ], [ 0, 1 ], 1 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 1, 0 ], 1 },
+ { [ 0.5, 0.5, 0.5 ], [ 0, 1, 0 ], [ 1, 1 ], 1 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 1, 0 ], 1 }, // bottom
+ { [ 0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 0, 0 ], 1 },
+ { [ -0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 1, 1 ], 1 },
+ { [ 0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 0, 1 ], 1 },
+ { [ -0.5, -0.5, -0.5 ], [-1, 0, 0 ], [ 0, 1 ], 0 }, // left
+ { [ -0.5, -0.5, 0.5 ], [-1, 0, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [-1, 0, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.5, 0.5 ], [-1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 1 ], 0 }, // right
+ { [ 0.5, 0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 1, 0, 0 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 1, 0, 0 ], [ 0, 0 ], 0 },
+ };
+ indices = {
+ 0, 1, 2, 2, 1, 3, // front
+ 4, 5, 6, 6, 5, 7, // back
+ 8, 9, 10, 10, 9, 11, // top
+ 12, 13, 14, 14, 13, 15, // bottom
+ 16, 17, 18, 18, 17, 19, // left
+ 20, 21, 22, 22, 21, 23, // right
+ };
+ fill = [ true, true, true, true, true, true ];
+};
+
+// temporary fix for missing skeleton loader
+player_head_block = {
+ bounds = Cuboid([ -0.5, -0.5, -0.5 ], [ 0.5, 0.5, 0.5 ]);
+ vertices = {
+ // position normal texture
+ { [ -0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 0, 1 ], 0 }, // front
+ { [ 0.5, -0.5, 0.5 ], [ 0, 0, 1 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.5, 0.5 ], [ 0, 0, 1 ], [ 0, 0 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 0, 0, 1 ], [ 1, 0 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 1 ], 1 }, // back
+ { [ -0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 1, 0 ], 1 },
+ { [ 0.5, -0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 1 ], 1 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 0, -1 ], [ 0, 0 ], 1 },
+ { [ -0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 0, 0 ], 0 }, // top
+ { [ -0.5, 0.5, 0.5 ], [ 0, 1, 0 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, -0.5 ], [ 0, 1, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 0, 1, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 1, 0 ], 0 }, // bottom
+ { [ 0.5, -0.5, -0.5 ], [ 0, -1, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 1, 1 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 0, -1, 0 ], [ 0, 1 ], 0 },
+ { [ -0.5, -0.5, -0.5 ], [-1, 0, 0 ], [ 0, 1 ], 0 }, // left
+ { [ -0.5, -0.5, 0.5 ], [-1, 0, 0 ], [ 1, 1 ], 0 },
+ { [ -0.5, 0.5, -0.5 ], [-1, 0, 0 ], [ 0, 0 ], 0 },
+ { [ -0.5, 0.5, 0.5 ], [-1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 1 ], 0 }, // right
+ { [ 0.5, 0.5, -0.5 ], [ 1, 0, 0 ], [ 1, 0 ], 0 },
+ { [ 0.5, -0.5, 0.5 ], [ 1, 0, 0 ], [ 0, 1 ], 0 },
+ { [ 0.5, 0.5, 0.5 ], [ 1, 0, 0 ], [ 0, 0 ], 0 },
+ };
+ indices = {
+ 0, 1, 2, 2, 1, 3, // front
+ 4, 5, 6, 6, 5, 7, // back
+ 8, 9, 10, 10, 9, 11, // top
+ 12, 13, 14, 14, 13, 15, // bottom
+ 16, 17, 18, 18, 17, 19, // left
+ 20, 21, 22, 22, 21, 23, // right
+ };
+ fill = [ true, true, true, true, true, true ];
+};