/* ============= PrintBSPFileSizes Dumps info about current file ============= */ void Q2_PrintBSPFileSizes (void) { if (!num_entities) Q2_ParseEntities(); printf ("%6i models %7i\n" ,nummodels, (int)(nummodels*sizeof(dmodel_t))); printf ("%6i brushes %7i\n" ,numbrushes, (int)(numbrushes*sizeof(dbrush_t))); printf ("%6i brushsides %7i\n" ,numbrushsides, (int)(numbrushsides*sizeof(dbrushside_t))); printf ("%6i planes %7i\n" ,numplanes, (int)(numplanes*sizeof(dplane_t))); printf ("%6i texinfo %7i\n" ,numtexinfo, (int)(numtexinfo*sizeof(texinfo_t))); printf ("%6i entdata %7i\n", num_entities, entdatasize); printf ("\n"); printf ("%6i vertexes %7i\n" ,numvertexes, (int)(numvertexes*sizeof(dvertex_t))); printf ("%6i nodes %7i\n" ,numnodes, (int)(numnodes*sizeof(dnode_t))); printf ("%6i faces %7i\n" ,numfaces, (int)(numfaces*sizeof(dface_t))); printf ("%6i leafs %7i\n" ,numleafs, (int)(numleafs*sizeof(dleaf_t))); printf ("%6i leaffaces %7i\n" ,numleaffaces, (int)(numleaffaces*sizeof(dleaffaces[0]))); printf ("%6i leafbrushes %7i\n" ,numleafbrushes, (int)(numleafbrushes*sizeof(dleafbrushes[0]))); printf ("%6i surfedges %7i\n" ,numsurfedges, (int)(numsurfedges*sizeof(dsurfedges[0]))); printf ("%6i edges %7i\n" ,numedges, (int)(numedges*sizeof(dedge_t))); //NEW printf ("%6i areas %7i\n" ,numareas, (int)(numareas*sizeof(darea_t))); printf ("%6i areaportals %7i\n" ,numareaportals, (int)(numareaportals*sizeof(dareaportal_t))); //ENDNEW printf (" lightdata %7i\n", lightdatasize); printf (" visdata %7i\n", visdatasize); } //end of the function Q2_PrintBSPFileSizes
//=========================================================================== // // Parameter: - // Returns: - // Changes Globals: - //=========================================================================== void Q2_LoadMapFromBSP(char *filename, int offset, int length) { int i; Log_Print("-- Q2_LoadMapFromBSP --\n"); //loaded map type loadedmaptype = MAPTYPE_QUAKE2; Log_Print("Loading map from %s...\n", filename); //load the bsp file Q2_LoadBSPFile(filename, offset, length); //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; Q2_ParseEntities(); // for (i = 0; i < num_entities; i++) { Q2_ParseBSPEntity(i); } //end for //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].mins[0] > 4096) { continue; //no valid points } AddPointToBounds(mapbrushes[i].mins, map_mins, map_maxs); AddPointToBounds(mapbrushes[i].maxs, map_mins, map_maxs); } //end for PrintMapInfo(); // Q2_CreateMapTexinfo(); } //end of the function Q2_LoadMapFromBSP