]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake3/q3map2/convert_obj.c
some warning fixes
[xonotic/netradiant.git] / tools / quake3 / q3map2 / convert_obj.c
index f02da25a73d2fe84cf6a7a62be4e81b7b9d2371f..15c1e06c05be173cac9040002178b1042382a402 100644 (file)
@@ -51,7 +51,7 @@ int objVertexCount = 0;
 int objLastShaderNum = -1;
 static void ConvertSurfaceToOBJ( FILE *f, bspModel_t *model, int modelNum, bspDrawSurface_t *ds, int surfaceNum, vec3_t origin )
 {
-       int                             i, v, face, a, b, c;
+       int                             i, v, a, b, c;
        bspDrawVert_t   *dv;
        
        /* ignore patches for now */
@@ -74,18 +74,18 @@ static void ConvertSurfaceToOBJ( FILE *f, bspModel_t *model, int modelNum, bspDr
        {
                if(objLastShaderNum != ds->lightmapNum[0])
                {
-                       fprintf(f, "usemtl lm_%04d\r\n", ds->lightmapNum[0]);
-                       objLastShaderNum = ds->lightmapNum[0];
+                       fprintf(f, "usemtl lm_%04d\r\n", ds->lightmapNum[0] + deluxemap);
+                       objLastShaderNum = ds->lightmapNum[0] + deluxemap;
                }
-               if(ds->lightmapNum[0] < firstLightmap)
+               if(ds->lightmapNum[0] + (int)deluxemap < firstLightmap)
                {
-                       Sys_Printf( "WARNING: lightmap %d out of range (exporting anyway)\n", ds->lightmapNum[0] );
-                       firstLightmap = ds->lightmapNum[0];
+                       Sys_Printf( "WARNING: lightmap %d out of range (exporting anyway)\n", ds->lightmapNum[0] + deluxemap );
+                       firstLightmap = ds->lightmapNum[0] + deluxemap;
                }
                if(ds->lightmapNum[0] > lastLightmap)
                {
-                       Sys_Printf( "WARNING: lightmap %d out of range (exporting anyway)\n", ds->lightmapNum[0] );
-                       lastLightmap = ds->lightmapNum[0];
+                       Sys_Printf( "WARNING: lightmap %d out of range (exporting anyway)\n", ds->lightmapNum[0] + deluxemap );
+                       lastLightmap = ds->lightmapNum[0] + deluxemap;
                }
        }
        else
@@ -114,7 +114,6 @@ static void ConvertSurfaceToOBJ( FILE *f, bspModel_t *model, int modelNum, bspDr
        /* export faces */
        for( i = 0; i < ds->numIndexes; i += 3 )
        {
-               face = (i / 3);
                a = bspDrawIndexes[ i + ds->firstIndex ];
                c = bspDrawIndexes[ i + ds->firstIndex + 1 ];
                b = bspDrawIndexes[ i + ds->firstIndex + 2 ];
@@ -160,7 +159,7 @@ exports a bsp shader to an ase chunk
 static void ConvertShaderToMTL( FILE *f, bspShader_t *shader, int shaderNum )
 {
        shaderInfo_t    *si;
-       char                    *c, filename[ 1024 ];
+       char                    filename[ 1024 ];
        
        
        /* get shader */
@@ -176,9 +175,12 @@ static void ConvertShaderToMTL( FILE *f, bspShader_t *shader, int shaderNum )
                strcpy( filename, si->shaderImage->filename );
        else
                sprintf( filename, "%s.tga", si->shader );
+
+       /* blender hates this, so let's not do it
        for( c = filename; *c != '\0'; c++ )
                if( *c == '/' )
                        *c = '\\';
+       */
        
        /* print shader info */
        fprintf( f, "newmtl %s\r\n", shader->shader );
@@ -186,7 +188,10 @@ static void ConvertShaderToMTL( FILE *f, bspShader_t *shader, int shaderNum )
        if(shadersAsBitmap)
                fprintf( f, "map_Kd %s\r\n", shader->shader );
        else
+       /* blender hates this, so let's not do it
                fprintf( f, "map_Kd ..\\%s\r\n", filename );
+       */
+               fprintf( f, "map_Kd ../%s\r\n", filename );
 }
 
 static void ConvertLightmapToMTL( FILE *f, const char *base, int lightmapNum )
@@ -194,7 +199,10 @@ static void ConvertLightmapToMTL( FILE *f, const char *base, int lightmapNum )
        /* print shader info */
        fprintf( f, "newmtl lm_%04d\r\n", lightmapNum );
        if(lightmapNum >= 0)
+       /* blender hates this, so let's not do it
                fprintf( f, "map_Kd %s\\lm_%04d.tga\r\n", base, lightmapNum );
+       */
+               fprintf( f, "map_Kd %s/lm_%04d.tga\r\n", base, lightmapNum );
 }