当前位置: 首页>>代码示例>>C++>>正文


C++ CFileHandler::Open方法代码示例

本文整理汇总了C++中CFileHandler::Open方法的典型用法代码示例。如果您正苦于以下问题:C++ CFileHandler::Open方法的具体用法?C++ CFileHandler::Open怎么用?C++ CFileHandler::Open使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CFileHandler的用法示例。


在下文中一共展示了CFileHandler::Open方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: sizeof

void CTileHandler::ProcessTiles2(void)
{
	unsigned char* data=new unsigned char[1024*1024*4];
	bigTex=CBitmap(data,1,1);	/// /free big tex memory
	int tilex=xsize/4;
	int tiley=ysize/4;

	for(int a=0;a<(tilex*tiley)/1024;++a){
		int startTile=a*1024;

		char name[100];
		DDSURFACEDESC2 ddsheader;
		int ddssignature;
		CFileHandler file;
		
		if (prog == "nvdxt.exe " || prog == "nvcompress.exe " || prog == "texconv.exe " || prog == "old_nvdxt.exe "){	
			sprintf(name,"Temp%03i.dds",a);	
		    file.Open(name);
			file.Read(&ddssignature, sizeof(int));
			file.Read(&ddsheader, sizeof(DDSURFACEDESC2));
		} 
		if (prog == "texcompress.exe "){
		    sprintf(name, "temp\\Temp%03i.png.raw", a);
		    file.Open(name);
		}    

		char bigtile[696320]; // /1024x1024 and 4 mipmaps
		file.Read(bigtile, 696320);

		for(int b=0;b<1024;++b){
			int x=b%32;
			int y=b/32;
			int xb=(startTile+b)%tilex;
			int yb=(startTile+b)/tilex;

			char* ctile=new char[SMALL_TILE_SIZE];
			ReadTile(x*32,y*32,ctile,bigtile);
			CBitmap* bm=new CBitmap();
			bm->CreateFromDXT1((unsigned char*)ctile,32,32);

			int t1=tileUse[max(0,(yb-1)*tilex+xb)];
			int t2=tileUse[max(0,yb*tilex+xb-1)];
			int ct=FindCloseTile(bm,t1==t2?t1:-1);
			if(ct==-1){
				tileUse[yb*tilex+xb]=usedTiles;
				tiles[usedTiles++]=bm;
				newTiles.push_back(ctile);
			} else {
				tileUse[yb*tilex+xb]=ct;
				delete bm;
				delete[] ctile;
			}
		}
		printf("Creating tiles %i/%i %i%%\n", usedTiles-numExternalTile,(a+1)*1024,(((a+1)*1024)*100)/(tilex*tiley));
	}

	delete[] data;
}
开发者ID:genxinzou,项目名称:svn-spring-archive,代码行数:58,代码来源:TileHandler.cpp


注:本文中的CFileHandler::Open方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。