void Q3_LoadMapFromBSP(struct quakefile_s *qf) { int i; //vec3_t mins = {-1,-1,-1}, maxs = {1, 1, 1}; Log_Print("-- Q3_LoadMapFromBSP --\n"); //loaded map type loadedmaptype = MAPTYPE_QUAKE3; Log_Print("Loading map from %s...\n", qf->filename); //load the bsp file Q3_LoadBSPFile(qf); //create an index from bsp planes to map planes //DPlanes2MapPlanes(); //clear brush model numbers for (i = 0; i < MAX_MAPFILE_BRUSHES; i++) brushmodelnumbers[i] = -1; nummapbrushsides = 0; num_entities = 0; Q3_ParseEntities(); // for (i = 0; i < num_entities; i++) { Q3_ParseBSPEntity(i); } //end for AAS_CreateCurveBrushes(); //get the map mins and maxs from the world model ClearBounds(map_mins, map_maxs); for (i = 0; i < entities[0].numbrushes; i++) { if (mapbrushes[i].numsides <= 0) continue; AddPointToBounds (mapbrushes[i].mins, map_mins, map_maxs); AddPointToBounds (mapbrushes[i].maxs, map_mins, map_maxs); } //end for /*/ for (i = 0; i < nummapbrushes; i++) { //if (!mapbrushes[i].original_sides) continue; //AddBrushBevels(&mapbrushes[i]); //AAS_ExpandMapBrush(&mapbrushes[i], mins, maxs); } //end for*/ /* for (i = 0; i < nummapbrushsides; i++) { Log_Write("side %d flags = %d", i, brushsides[i].flags); } //end for for (i = 0; i < nummapbrushes; i++) { Log_Write("brush contents: "); PrintContents(mapbrushes[i].contents); Log_Print("\n"); } //end for*/ } //end of the function Q3_LoadMapFromBSP
/* ============= Q3_PrintBSPFileSizes Dumps info about current file ============= */ void Q3_PrintBSPFileSizes( void ) { if ( !num_entities ) { Q3_ParseEntities(); } Log_Print ("%6i models %7i\n" ,q3_nummodels, (int)(q3_nummodels*sizeof(dmodel_t))); Log_Print ("%6i shaders %7i\n" ,q3_numShaders, (int)(q3_numShaders*sizeof(dshader_t))); Log_Print ("%6i brushes %7i\n" ,q3_numbrushes, (int)(q3_numbrushes*sizeof(dbrush_t))); Log_Print ("%6i brushsides %7i\n" ,q3_numbrushsides, (int)(q3_numbrushsides*sizeof(dbrushside_t))); Log_Print ("%6i fogs %7i\n" ,q3_numFogs, (int)(q3_numFogs*sizeof(dfog_t))); Log_Print ("%6i planes %7i\n" ,q3_numplanes, (int)(q3_numplanes*sizeof(dplane_t))); Log_Print ("%6i entdata %7i\n", num_entities, q3_entdatasize); Log_Print ("\n"); Log_Print ("%6i nodes %7i\n" ,q3_numnodes, (int)(q3_numnodes*sizeof(dnode_t))); Log_Print ("%6i leafs %7i\n" ,q3_numleafs, (int)(q3_numleafs*sizeof(dleaf_t))); Log_Print ("%6i leafsurfaces %7i\n" ,q3_numleafsurfaces, (int)(q3_numleafsurfaces*sizeof(dleafsurfaces[0]))); Log_Print ("%6i leafbrushes %7i\n" ,q3_numleafbrushes, (int)(q3_numleafbrushes*sizeof(dleafbrushes[0]))); Log_Print ("%6i drawverts %7i\n" ,q3_numDrawVerts, (int)(q3_numDrawVerts*sizeof(drawVerts[0]))); Log_Print ("%6i drawindexes %7i\n" ,q3_numDrawIndexes, (int)(q3_numDrawIndexes*sizeof(drawIndexes[0]))); Log_Print ("%6i drawsurfaces %7i\n" ,q3_numDrawSurfaces, (int)(q3_numDrawSurfaces*sizeof(drawSurfaces[0]))); Log_Print ("%6i lightmaps %7i\n" ,q3_numLightBytes / (LIGHTMAP_WIDTH*LIGHTMAP_HEIGHT*3), q3_numLightBytes ); Log_Print (" visibility %7i\n" , q3_numVisBytes ); }