]> git.lizzy.rs Git - dragonblocks_alpha.git/commitdiff
Minor fixes to frustum culling
authorElias Fleckenstein <eliasfleckenstein@web.de>
Fri, 1 Oct 2021 11:33:21 +0000 (13:33 +0200)
committerElias Fleckenstein <eliasfleckenstein@web.de>
Fri, 1 Oct 2021 11:33:21 +0000 (13:33 +0200)
src/client/blockmesh.c
src/client/frustum.c

index d06ef6968c5c622b6e1383b0702eee5d588f87ad..38a5d8312f7b5f5e27edd1a84553253d0abe6628 100644 (file)
@@ -86,7 +86,7 @@ void blockmesh_make(MapBlock *block)
        obj->pos = (v3f32) {block->pos.x * MAPBLOCK_SIZE + half_block_size + 0.5f, block->pos.y * MAPBLOCK_SIZE + half_block_size + 0.5f, block->pos.z * MAPBLOCK_SIZE + half_block_size + 0.5f};
        obj->scale = extra->obj ? extra->obj->scale : (v3f32) {0.1f, 0.1f, 0.1f};
        obj->frustum_culling = true;
-       obj->box = (aabb3f32) {{-half_block_size - 1.0f, -half_block_size - 1.0f, -half_block_size - 1.0f}, {half_block_size + 1.0f, half_block_size + 1.0f, half_block_size + 1.0f}};
+       obj->box = (aabb3f32) {{-half_block_size - 0.5f, -half_block_size - 0.5f, -half_block_size - 0.5f}, {half_block_size + 0.5f, half_block_size + 0.5f, half_block_size + 0.5f}};
        obj->on_render = (obj->scale.x == 1.0f) ? NULL : &animate_mapblock_mesh;
        obj->extra = block;
 
index ec96a4b0cd4089349bcbe21029cd978cd70cc811..7c83163a96de3bec507b80c0f790ac7783834731 100644 (file)
@@ -52,7 +52,7 @@ void frustum_update(mat4x4 view_proj)
                for (Plane a = PLANE_LEFT; a <= PLANE_RIGHT; a++) {
                        for (Plane b = PLANE_BOTTOM; b <= PLANE_TOP; b++) {
                                float d = -1.0f / vec3_mul_inner(frustum.planes[a], crosses[frustum.cross_indices[b][c]]);
-                               vec3 w = {frustum.planes[a][4], frustum.planes[b][4], frustum.planes[c][4]};
+                               vec3 w = {frustum.planes[a][3], frustum.planes[b][3], frustum.planes[c][3]};
                                float *res = frustum.points[j++];
 
                                vec3 res_1_cross = {-crosses[frustum.cross_indices[a][c]][0], -crosses[frustum.cross_indices[a][c]][1], -crosses[frustum.cross_indices[a][c]][2]};