"lighting"
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Sun, 19 Dec 2021 16:10:10 +0000 (10:10 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Sun, 19 Dec 2021 16:10:10 +0000 (10:10 -0600)
src/chunk.onyx

index 25c2eb419dc7560f5dec8719c48951cc2c2f988a..f592b24aae62896a8585e17d1da2d2e91e2667bd 100644 (file)
@@ -15,7 +15,7 @@ block_make :: (red, green, blue: f32, brightness: f32) -> Block {
     return ~~((i << 12) | (b << 8) | (g << 4) | r);
 }
 
-Chunk_Size :: 16
+Chunk_Size :: 32
 
 Chunk :: struct {
     blocks: [] Block;
@@ -93,11 +93,18 @@ chunk_build_mesh :: (use chunk: ^Chunk) -> ^Mesh {
             nz := z + n.z;
 
             if chunk_get(chunk, nx, ny, nz) != Block_Empty do continue;
+            color := block;
+            if i != 4 {
+                color = cast(Block) (0xb000 | (0xfff & cast(u32) color));
+            }
+            if i == 5 {
+                color = cast(Block) (0x9000 | (0xfff & cast(u32) color));
+            }
 
             indicies := cast([] u32) block_indicies[i];
             for j: 6 {
                 v := block_verticies[indicies[j]];
-                verticies << .{ ~~x+v.x, ~~y+v.y, ~~z+v.z, ~~block };
+                verticies << .{ ~~x+v.x, ~~y+v.y, ~~z+v.z, ~~color };
             }
         }
     };