allow not keeping aspect

git-svn-id: svn://svn.icculus.org/netradiant/trunk@345 61c419a2-8eb2-4b30-bcec-8cead039b335
This commit is contained in:
divverent 2009-04-27 15:03:55 +00:00
parent 83ce35b16a
commit 1497c06cef
18 changed files with 44 additions and 13 deletions

View File

@ -67,6 +67,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -67,6 +67,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -126,6 +126,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -161,6 +161,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -80,6 +80,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"RBSP", /* bsp file prefix */
1, /* bsp file version */

View File

@ -77,6 +77,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"RBSP", /* bsp file prefix */
1, /* bsp file version */

View File

@ -76,6 +76,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
1.0f/66.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"../gfx/%s_mini.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -67,6 +67,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -126,8 +126,9 @@ game_t struct
qfalse, /* compile deluxemaps */
0, /* deluxemaps default mode */
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap sharpener */
0.0f, /* minimap border */
qfalse, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"FBSP", /* bsp file prefix */
1, /* bsp file version */

View File

@ -125,6 +125,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -77,6 +77,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
47, /* bsp file version */

View File

@ -152,6 +152,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"RBSP", /* bsp file prefix */
1, /* bsp file version */

View File

@ -125,6 +125,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -83,6 +83,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -142,6 +142,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -79,6 +79,7 @@ game_t struct
512, /* minimap size */
1.0f, /* minimap sharpener */
0.0f, /* minimap border */
qtrue, /* minimap keep aspect */
"%s.tga", /* minimap name format */
"IBSP", /* bsp file prefix */
46, /* bsp file version */

View File

@ -293,7 +293,7 @@ static void MiniMapSharpen(int y)
}
}
void MiniMapMakeMinsMaxs(vec3_t mins_in, vec3_t maxs_in, float border)
void MiniMapMakeMinsMaxs(vec3_t mins_in, vec3_t maxs_in, float border, qboolean keepaspect)
{
vec3_t mins, maxs, extend;
VectorCopy(mins_in, mins);
@ -302,8 +302,9 @@ void MiniMapMakeMinsMaxs(vec3_t mins_in, vec3_t maxs_in, float border)
// line compatible to nexuiz mapinfo
Sys_Printf("size %f %f %f %f %f %f\n", mins[0], mins[1], mins[2], maxs[0], maxs[1], maxs[2]);
if(keepaspect)
{
VectorSubtract(maxs, mins, extend);
if(extend[1] > extend[0])
{
mins[0] -= (extend[1] - extend[0]) * 0.5;
@ -314,6 +315,7 @@ void MiniMapMakeMinsMaxs(vec3_t mins_in, vec3_t maxs_in, float border)
mins[1] -= (extend[0] - extend[1]) * 0.5;
maxs[1] += (extend[0] - extend[1]) * 0.5;
}
}
/* border: amount of black area around the image */
/* input: border, 1-2*border, border but we need border/(1-2*border) */
@ -535,6 +537,7 @@ int MiniMapBSPMain( int argc, char **argv )
int x, y;
int i;
vec3_t mins, maxs;
qboolean keepaspect;
/* arg checking */
if( argc < 2 )
@ -560,6 +563,7 @@ int MiniMapBSPMain( int argc, char **argv )
minimapSharpen = game->miniMapSharpen;
minimap.width = minimap.height = game->miniMapSize;
border = game->miniMapBorder;
keepaspect = game->miniMapKeepAspect;
minimap.samples = 1;
minimap.sample_offsets = NULL;
@ -604,6 +608,16 @@ int MiniMapBSPMain( int argc, char **argv )
i++;
Sys_Printf( "Border set to %f\n", border );
}
else if( !strcmp( argv[ i ], "-keepaspect" ) )
{
keepaspect = qtrue;
Sys_Printf( "Keeping aspect ratio by letterboxing\n", border );
}
else if( !strcmp( argv[ i ], "-nokeepaspect" ) )
{
keepaspect = qfalse;
Sys_Printf( "Not keeping aspect ratio\n", border );
}
else if( !strcmp( argv[ i ], "-o" ) )
{
strcpy(minimapFilename, argv[i + 1]);
@ -623,7 +637,7 @@ int MiniMapBSPMain( int argc, char **argv )
}
}
MiniMapMakeMinsMaxs(mins, maxs, border);
MiniMapMakeMinsMaxs(mins, maxs, border, keepaspect);
if(!*minimapFilename)
{

View File

@ -564,6 +564,7 @@ typedef struct game_s
int miniMapSize; /* minimap size */
float miniMapSharpen; /* minimap sharpening coefficient */
float miniMapBorder; /* minimap border amount */
qboolean miniMapKeepAspect; /* minimap keep aspect ratio by letterboxing */
char *miniMapNameFormat; /* minimap name format */
char *bspIdent; /* 4-letter bsp file prefix */
int bspVersion; /* bsp version to use */