show-chunk-borders is a setting now

This commit is contained in:
MihailRis
2023-11-24 19:39:45 +03:00
parent f54283cab1
commit 48b6c92472
6 changed files with 23 additions and 19 deletions
+10 -10
View File
@@ -174,23 +174,23 @@ void WorldRenderer::draw(const GfxContext& pctx, Camera* camera, bool occlusion)
float length = 40.f;
linesShader->use();
if (chunkBorders){
if (engine->getSettings().debug.showChunkBorders){
linesShader->uniformMatrix("u_projview", camera->getProjView());
GfxContext ctx = pctx.sub();
ctx.depthTest(true);
vec3 coord = level->player->camera->position;
int cx = floordiv((int)coord.x, CHUNK_W);
int cz = floordiv((int)coord.z, CHUNK_D);
for (int xx = 0; xx < CHUNK_W; xx++) {
lineBatch->line(cx * CHUNK_W + xx, 0, cz * CHUNK_D,
cx * CHUNK_W + xx, CHUNK_H, cz * CHUNK_D, 0,0,1,0.5f);
lineBatch->line(cx * CHUNK_W + xx, 0, (cz+1) * CHUNK_D,
cx * CHUNK_W + xx, CHUNK_H, (cz+1) * CHUNK_D, 0,0,1,0.5f);
for (int i = 0; i < CHUNK_W; i++) {
lineBatch->line(cx * CHUNK_W + i, 0, cz * CHUNK_D,
cx * CHUNK_W + i, CHUNK_H, cz * CHUNK_D, 0,0,1,0.5f);
lineBatch->line(cx * CHUNK_W + i, 0, (cz+1) * CHUNK_D,
cx * CHUNK_W + i, CHUNK_H, (cz+1) * CHUNK_D, 0,0,1,0.5f);
lineBatch->line(cx * CHUNK_W, 0, cz * CHUNK_D+xx,
cx * CHUNK_W, CHUNK_H, cz * CHUNK_D+xx, 1,0,0,0.5f);
lineBatch->line((cx+1) * CHUNK_W, 0, cz * CHUNK_D+xx,
(cx+1) * CHUNK_W, CHUNK_H, cz * CHUNK_D+xx, 1,0,0,0.5f);
lineBatch->line(cx * CHUNK_W, 0, cz * CHUNK_D+i,
cx * CHUNK_W, CHUNK_H, cz * CHUNK_D+i, 1,0,0,0.5f);
lineBatch->line((cx+1) * CHUNK_W, 0, cz * CHUNK_D+i,
(cx+1) * CHUNK_W, CHUNK_H, cz * CHUNK_D+i, 1,0,0,0.5f);
}
lineBatch->render();
}