From 92b61c99968b15836a21ec0b7f7d2d44e71d4b6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Madar=C3=A1sz?= Date: Sat, 24 Aug 2024 14:23:06 +0200 Subject: [PATCH] minor culling tweaks --- engine/joint/v4k.h | 6 ++++++ engine/split/v4k_render.c | 6 ++++++ engine/v4k.c | 6 ++++++ tools/ark.exe | Bin 155136 -> 155136 bytes tools/ase2ini.exe | Bin 370688 -> 370688 bytes tools/ass2iqe.c | 13 +++++++++---- tools/ass2iqe.exe | Bin 189440 -> 189440 bytes tools/iqe2iqm.exe | Bin 304640 -> 304640 bytes 8 files changed, 27 insertions(+), 4 deletions(-) diff --git a/engine/joint/v4k.h b/engine/joint/v4k.h index e09fc15..7e5c581 100644 --- a/engine/joint/v4k.h +++ b/engine/joint/v4k.h @@ -386009,6 +386009,12 @@ bool model_is_visible(model_t m, int mesh, mat44 model_mat) { box.min = transform344(model_mat, box.min); box.max = transform344(model_mat, box.max); +#if 0 + // ddraw_sphere(s.c, s.r); + ddraw_aabb(box.min, box.max); + ddraw_position(s.c, 3.0f); +#endif + if (!frustum_test_aabb(m.frustum_state, box)) { return false; } diff --git a/engine/split/v4k_render.c b/engine/split/v4k_render.c index 3c33412..95a0704 100644 --- a/engine/split/v4k_render.c +++ b/engine/split/v4k_render.c @@ -4353,6 +4353,12 @@ bool model_is_visible(model_t m, int mesh, mat44 model_mat) { box.min = transform344(model_mat, box.min); box.max = transform344(model_mat, box.max); +#if 0 + // ddraw_sphere(s.c, s.r); + ddraw_aabb(box.min, box.max); + ddraw_position(s.c, 3.0f); +#endif + if (!frustum_test_aabb(m.frustum_state, box)) { return false; } diff --git a/engine/v4k.c b/engine/v4k.c index 9a52fa4..155ea66 100644 --- a/engine/v4k.c +++ b/engine/v4k.c @@ -21152,6 +21152,12 @@ bool model_is_visible(model_t m, int mesh, mat44 model_mat) { box.min = transform344(model_mat, box.min); box.max = transform344(model_mat, box.max); +#if 0 + // ddraw_sphere(s.c, s.r); + ddraw_aabb(box.min, box.max); + ddraw_position(s.c, 3.0f); +#endif + if (!frustum_test_aabb(m.frustum_state, box)) { return false; } diff --git a/tools/ark.exe b/tools/ark.exe index c7ceaf51ab7d61bab3966572b46a0f434001df6c..53d8146eb7b49f6132c9e7a4022797734f4cfc98 100644 GIT binary patch delta 35 pcmZqJ!`ZNha{(js$FnD!nHk%e85y@TGcpPCf&{jU^D({j2LR#BkMy6kmUC7lB}G40Eu7^-2eap delta 48 wcmZp;Al7g}Y=ZzJbNTiY&BBcB!i*ry1jNih%(7jWk@cYjNOJpkNmkB20B*t#xc~qF diff --git a/tools/ass2iqe.c b/tools/ass2iqe.c index 622f70e..0c32256 100644 --- a/tools/ass2iqe.c +++ b/tools/ass2iqe.c @@ -1409,22 +1409,27 @@ flags |= (doflipUV ? aiProcess_FlipUVs : 0); #else int flags = 0 | aiProcessPreset_TargetRealtime_MaxQuality - | aiProcess_JoinIdenticalVertices + // | aiProcess_JoinIdenticalVertices | aiProcess_GenSmoothNormals | aiProcess_GenUVCoords | aiProcess_TransformUVCoords | aiProcess_LimitBoneWeights // #defined as AI_LMW_MAX_WEIGHTS 4 - | aiProcess_ImproveCacheLocality - //| aiProcess_RemoveRedundantMaterials + // | aiProcess_ImproveCacheLocality + | aiProcess_RemoveRedundantMaterials | aiProcess_OptimizeMeshes // aiProcess_SplitLargeMeshes | (doflipUV ? aiProcess_FlipUVs : 0) | aiProcess_OptimizeGraph | aiProcess_PopulateArmatureData //| aiProcess_FlipWindingOrder - //| aiProcess_GenBoundingBoxes + // | aiProcess_GenBoundingBoxes | aiProcess_GlobalScale // AI_CONFIG_GLOBAL_SCALE_FACTOR_KEY ; + // flags &= ~aiProcess_OptimizeMeshes; + // flags &= ~aiProcess_RemoveRedundantMaterials; + // flags &= ~aiProcess_ImproveCacheLocality; + // flags &= ~aiProcess_JoinIdenticalVertices; + // | aiProcess_CalcTangentSpace // | aiProcess_Triangulate // | aiProcess_SortByPType diff --git a/tools/ass2iqe.exe b/tools/ass2iqe.exe index 590da675d6baa724f29d19a2183564b1c9f04355..2929d7bc10e3f92d9fc670df2acdb9017d29de0c 100644 GIT binary patch delta 36 qcmZoT!QF6zdjkg}^QW^Xo4Fa=xfvO^b2Bn&c7g=9n|Cptj06Drf(@(y delta 36 qcmZoT!QF6zdjkg}bNTiY&D@Ob+>DIdxfz)>J3#{5&AXURMgjokybOo{ diff --git a/tools/iqe2iqm.exe b/tools/iqe2iqm.exe index 2f7b68ef70c48a1cdda684896aa699bdb4cd2b15..0790152f07a1e9d90baa654d098fb72d221555cb 100644 GIT binary patch delta 43 tcmZoTBh+w4XaOVh=d&l9nHk%e89|r{h?%!DGqNny1W9aPuEi2r4FE<{4vhc+ delta 43 tcmZoTBh+w4XaOU0#r6};%#7{Kj3CSe#LU~78Ce!;f+V&t*J6pR1^_Mn4QT)X