]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake3/q3map2/q3map2.h
q3map2: add -externalnames option to write explicit external lightmap names when...
[xonotic/netradiant.git] / tools / quake3 / q3map2 / q3map2.h
index 89f7915ace9d276d6d054ccdd6ee46bac76038d3..42c7121063e0134e615ed726f693033e5c183f12 100644 (file)
        #define Q_strncasecmp       strncasecmp
 #endif
 
+// hack to declare and define in the same file
+#ifdef MAIN_C
+       #define Q_EXTERN
+       #define Q_ASSIGN( a )   = a
+#else
+       #define Q_EXTERN extern
+       #define Q_ASSIGN( a )
+#endif
+
 /* macro version */
 #define VectorMA( a, s, b, c )  ( ( c )[ 0 ] = ( a )[ 0 ] + ( s ) * ( b )[ 0 ], ( c )[ 1 ] = ( a )[ 1 ] + ( s ) * ( b )[ 1 ], ( c )[ 2 ] = ( a )[ 2 ] + ( s ) * ( b )[ 2 ] )
 
 /* general */
 #define MAX_QPATH               64
 
-#define MAX_IMAGES              512
+#define MAX_IMAGES              2048
 #define DEFAULT_IMAGE           "*default"
 
-#define MAX_MODELS              512
+#define MAX_MODELS              2048
 
 #define DEF_BACKSPLASH_FRACTION 0.05f   /* 5% backsplash by default */
 #define DEF_BACKSPLASH_DISTANCE 23
@@ -548,6 +557,13 @@ typedef enum
 }
 miniMapMode_t;
 
+typedef enum
+{
+       MINIMAP_SIDECAR_NONE,
+       MINIMAP_SIDECAR_UNVANQUISHED
+}
+miniMapSidecarFormat_t;
+
 typedef struct game_s
 {
        char                *arg;                           /* -game matches this */
@@ -584,6 +600,7 @@ typedef struct game_s
        qboolean miniMapKeepAspect;                         /* minimap keep aspect ratio by letterboxing */
        miniMapMode_t miniMapMode;                          /* minimap mode */
        char                *miniMapNameFormat;             /* minimap name format */
+       miniMapSidecarFormat_t miniMapSidecarFormat;        /* minimap sidecar format */
        char                *bspIdent;                      /* 4-letter bsp file prefix */
        int bspVersion;                                     /* bsp version to use */
        qboolean lumpSwap;                                  /* cod-style len/ofs order */
@@ -1004,7 +1021,7 @@ typedef enum
 }
 surfaceType_t;
 
-char            *surfaceTypes[ NUM_SURFACE_TYPES ]
+Q_EXTERN char *surfaceTypes[ NUM_SURFACE_TYPES ]
 #ifndef MAIN_C
 ;
 #else
@@ -1816,6 +1833,7 @@ void                        RadFreeLights();
 
 /* light_ydnar.c */
 void                        ColorToBytes( const float *color, byte *colorBytes, float scale );
+void                        ColorToBytesNonZero( const float *color, byte *colorBytes, float scale );
 void                        SmoothNormals( void );
 
 void                        MapRawLightmap( int num );
@@ -1856,7 +1874,7 @@ int                         ImportLightmapsMain( int argc, char **argv );
 
 void                        SetupSurfaceLightmaps( void );
 void                        StitchSurfaceLightmaps( void );
-void                        StoreSurfaceLightmaps( qboolean fastLightmapSearch, qboolean storeForReal );
+void                        StoreSurfaceLightmaps( qboolean fastAllocate, qboolean storeForReal );
 
 
 /* exportents.c */
@@ -1950,14 +1968,6 @@ void                        WriteRBSPFile( const char *filename );
 
    ------------------------------------------------------------------------------- */
 
-#ifdef MAIN_C
-       #define Q_EXTERN
-       #define Q_ASSIGN( a )   = a
-#else
-       #define Q_EXTERN extern
-       #define Q_ASSIGN( a )
-#endif
-
 /* game support */
 Q_EXTERN game_t games[]
 #ifndef MAIN_C
@@ -1966,16 +1976,26 @@ Q_EXTERN game_t games[]
        =
        {
                                                                #include "game_quake3.h"
+       ,
+                                                               #include "game_nexuiz.h" /* must be after game_quake3.h as they share defines! */
+       ,
+                                                               #include "game_oa.h" /* must be after game_quake3.h as they share defines! */
+       ,
+                                                               #include "game_q3rally.h" /* must be after game_quake3.h as they share defines! */
        ,
                                                                #include "game_quakelive.h" /* must be after game_quake3.h as they share defines! */
        ,
-                                                               #include "game_nexuiz.h" /* must be after game_quake3.h as they share defines! */
+                                                               #include "game_reaction.h" /* must be after game_quake3.h */
        ,
-                                                               #include "game_xonotic.h" /* must be after game_quake3.h as they share defines! */
+                                                               #include "game_smokinguns.h" /* must be after game_quake3.h */
        ,
-                                                               #include "game_tremulous.h" /*LinuxManMikeC: must be after game_quake3.h, depends on #define's set in it */
+                                                               #include "game_tremulous.h" /* LinuxManMikeC: must be after game_quake3.h, depends on #define's set in it */
        ,
                                                                #include "game_unvanquished.h" /* must be after game_tremulous.h as they share defines! */
+       ,
+                                                               #include "game_wop.h" /* must be after game_quake3.h as they share defines! */
+       ,
+                                                               #include "game_xonotic.h" /* must be after game_quake3.h as they share defines! */
        ,
                                                                #include "game_tenebrae.h"
        ,
@@ -1989,19 +2009,19 @@ Q_EXTERN game_t games[]
        ,
                                                                #include "game_sof2.h"
        ,
-                                                               #include "game_jk2.h"   /* must be after game_sof2.h as they share defines! */
+                                                               #include "game_jk2.h" /* must be after game_sof2.h as they share defines! */
        ,
-                                                               #include "game_ja.h"    /* must be after game_jk2.h as they share defines! */
+                                                               #include "game_ja.h" /* must be after game_jk2.h as they share defines! */
        ,
-                                                               #include "game_qfusion.h"   /* qfusion game */
+                                                               #include "game_qfusion.h" /* qfusion game */
        ,
-                                                               #include "game_reaction.h" /* must be after game_quake3.h */
+                                                               #include "game_warsow.h" /* must be after game_qfusion.h as they share defines! */
        ,
-                                                               #include "game_smokinguns.h" /* must be after game_quake3.h */
+                                                               #include "game_warfork.h" /* must be after game_qfusion.h as they share defines! */
        ,
-                                                               #include "game_darkplaces.h"    /* vortex: darkplaces q1 engine */
+                                                               #include "game_darkplaces.h" /* darkplaces q1 engine */
        ,
-                                                               #include "game_dq.h"    /* vortex: deluxe quake game ( darkplaces q1 engine) */
+                                                               #include "game_dq.h" /* deluxe quake game ( darkplaces q1 engine) */
        ,
                                                                #include "game_prophecy.h"  /* vortex: prophecy game ( darkplaces q1 engine) */
        ,
@@ -2034,7 +2054,6 @@ Q_EXTERN float jitters[ MAX_JITTERS ];
 
 
 /* commandline arguments */
-Q_EXTERN qboolean verbose;
 Q_EXTERN qboolean verboseEntities Q_ASSIGN( qfalse );
 Q_EXTERN qboolean force Q_ASSIGN( qfalse );
 Q_EXTERN qboolean infoMode Q_ASSIGN( qfalse );
@@ -2291,6 +2310,7 @@ Q_EXTERN qboolean noCollapse Q_ASSIGN( qfalse );
 Q_EXTERN int lightmapSearchBlockSize Q_ASSIGN( 0 );
 Q_EXTERN qboolean exportLightmaps Q_ASSIGN( qfalse );
 Q_EXTERN qboolean externalLightmaps Q_ASSIGN( qfalse );
+Q_EXTERN qboolean externalLightmapNames Q_ASSIGN( qfalse );
 Q_EXTERN int lmCustomSize Q_ASSIGN( LIGHTMAP_WIDTH );
 Q_EXTERN char *             lmCustomDir Q_ASSIGN( NULL );
 Q_EXTERN int lmLimitSize Q_ASSIGN( 0 );