From 5cedd26c755b63d56557b851c4abd71fc51cc827 Mon Sep 17 00:00:00 2001 From: Garux Date: Tue, 8 Dec 2020 02:45:48 +0300 Subject: [PATCH] * -repack -analyze switch: only analyze bsps and exit (to dump bsp resource calls) --- tools/quake3/q3map2/autopk3.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/tools/quake3/q3map2/autopk3.c b/tools/quake3/q3map2/autopk3.c index dee9f4b7..282e6200 100644 --- a/tools/quake3/q3map2/autopk3.c +++ b/tools/quake3/q3map2/autopk3.c @@ -814,7 +814,7 @@ int pk3BSPMain( int argc, char **argv ){ int repackBSPMain( int argc, char **argv ){ int i, j, compLevel = 0; - bool dbg = false, png = false; + bool dbg = false, png = false, analyze = false; char str[ 1024 ]; /* process arguments */ @@ -825,6 +825,9 @@ int repackBSPMain( int argc, char **argv ){ else if ( strEqual( argv[ i ], "-png" ) ) { png = true; } + else if ( strEqual( argv[ i ], "-analyze" ) ) { // only analyze bsps and exit + analyze = true; + } else if ( strEqual( argv[ i ], "-complevel" ) ) { compLevel = atoi( argv[ i + 1 ] ); i++; @@ -956,6 +959,11 @@ int repackBSPMain( int argc, char **argv ){ for( j = 0; j < bspListN; ++j ){ + if( analyze ){ + pk3Sounds->n = 0; + pk3Shaders->n = 0; + } + int pk3SoundsNold = pk3Sounds->n; int pk3ShadersNold = pk3Shaders->n; @@ -1171,6 +1179,9 @@ int repackBSPMain( int argc, char **argv ){ } */ } + if( analyze ) + return 0; + vfsListShaderFiles( pk3Shaderfiles, pushStringCallback );