コード例 #1
0
ファイル: map_sin.c プロジェクト: morsik/war-territory
//===========================================================================
//
// Parameter:				-
// Returns:					-
// Changes Globals:		-
//===========================================================================
void Sin_LoadMapFromBSP(char *filename, int offset, int length)
{
	int i;

	Log_Print("-- Sin_LoadMapFromBSP --\n");
	//loaded map type
	loadedmaptype = MAPTYPE_SIN;

	Log_Print("Loading map from %s...\n", filename);
	//load the bsp file
	Sin_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;

	Sin_ParseEntities();
	//
	for (i = 0; i < num_entities; i++)
	{
		Sin_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
	  //
	Sin_CreateMapTexinfo();
} //end of the function Sin_LoadMapFromBSP
コード例 #2
0
/*
=============
Sin_PrintBSPFileSizes

Dumps info about current file
=============
*/
void Sin_PrintBSPFileSizes( void ) {
	if ( !num_entities ) {
		Sin_ParseEntities();
	}

	Log_Print( "%6i models       %7i\n"
			   ,sin_nummodels, (int)( sin_nummodels * sizeof( sin_dmodel_t ) ) );
	Log_Print( "%6i brushes      %7i\n"
			   ,sin_numbrushes, (int)( sin_numbrushes * sizeof( sin_dbrush_t ) ) );
	Log_Print( "%6i brushsides   %7i\n"
			   ,sin_numbrushsides, (int)( sin_numbrushsides * sizeof( sin_dbrushside_t ) ) );
	Log_Print( "%6i planes       %7i\n"
			   ,sin_numplanes, (int)( sin_numplanes * sizeof( sin_dplane_t ) ) );
	Log_Print( "%6i texinfo      %7i\n"
			   ,sin_numtexinfo, (int)( sin_numtexinfo * sizeof( sin_texinfo_t ) ) );
#ifdef SIN
	Log_Print( "%6i lightinfo    %7i\n"
			   ,sin_numlightinfo, (int)( sin_numlightinfo * sizeof( sin_lightvalue_t ) ) );
#endif
	Log_Print( "%6i entdata      %7i\n", num_entities, sin_entdatasize );

	Log_Print( "\n" );

	Log_Print( "%6i vertexes     %7i\n"
			   ,sin_numvertexes, (int)( sin_numvertexes * sizeof( sin_dvertex_t ) ) );
	Log_Print( "%6i nodes        %7i\n"
			   ,sin_numnodes, (int)( sin_numnodes * sizeof( sin_dnode_t ) ) );
	Log_Print( "%6i faces        %7i\n"
			   ,sin_numfaces, (int)( sin_numfaces * sizeof( sin_dface_t ) ) );
	Log_Print( "%6i leafs        %7i\n"
			   ,sin_numleafs, (int)( sin_numleafs * sizeof( sin_dleaf_t ) ) );
	Log_Print( "%6i leaffaces    %7i\n"
			   ,sin_numleaffaces, (int)( sin_numleaffaces * sizeof( sin_dleaffaces[0] ) ) );
	Log_Print( "%6i leafbrushes  %7i\n"
			   ,sin_numleafbrushes, (int)( sin_numleafbrushes * sizeof( sin_dleafbrushes[0] ) ) );
	Log_Print( "%6i surfedges    %7i\n"
			   ,sin_numsurfedges, (int)( sin_numsurfedges * sizeof( sin_dsurfedges[0] ) ) );
	Log_Print( "%6i edges        %7i\n"
			   ,sin_numedges, (int)( sin_numedges * sizeof( sin_dedge_t ) ) );
	Log_Print( "       lightdata    %7i\n", sin_lightdatasize );
	Log_Print( "       visdata      %7i\n", sin_visdatasize );
}