CUnit3DLoader::UnitModel* CUnit3DLoader::GetModel(string name,int team)
{
	char c[50];
	sprintf(c,"team%d_",team);
	string modname=string(c)+name;

	map<string,UnitModel*>::iterator ui;
	if((ui=models.find(modname))!=models.end())
			return ui->second;
	
	if(texturehandler==0)
		texturehandler=new CTextureHandler;

	UnitModel* model=new UnitModel;

	model->team=team;
	model->name=name;

	Parse(name,*model);
	CreateNormals(*model);
	CreateDispList(*model);
	for(std::vector<UnitModel*>::iterator umi=model->subModels.begin();umi!=model->subModels.end();++umi)
		CreateDispList(**umi);
	CreateFarTexture(*model);

	models[modname]=model;
	return model;
}
示例#2
0
void StarMesh::InitShape()
{
	
	CreateVertices();
	CreateIndices();
	CreateNormals();
	CreateTextureCoords();
}