|
|
char* strAdd(char * str1,char * str2)
{
char * result = NULL;
strcpy(result,str1);
strcat(result,str2);
return result;
}
--------------------------------------------------------------------------------
for (iMaterial = 0; iMaterial < NumMaterials; iMaterial++)
{
if (pMeshContainer->pMaterials[iMaterial].pTextureFilename != NULL)
{
TCHAR strTexturePath[MAX_PATH] = _T("Tankers\\Textures\\");
TCHAR *tszFilename;
#ifdef UNICODE
TCHAR tszBuf[MAX_PATH];
tszFilename = tszBuf;
MultiByteToWideChar( CP_ACP, 0, pMeshContainer->pMaterials[iMaterial].pTextureFilename, -1, tszBuf, MAX_PATH );
tszBuf[MAX_PATH - 1] = _T('\0');
#else
tszFilename = pMeshContainer->pMaterials[iMaterial].pTextureFilename;
#endif
if( FAILED( D3DXCreateTextureFromFile( pd3dDevice,strAdd(strTexturePath,tszFilename),
&pMeshContainer->ppTextures[iMaterial] ) ) )
pMeshContainer->ppTextures[iMaterial] = NULL;
// don't remember a pointer into the dynamic memory, just forget the name after loading
pMeshContainer->pMaterials[iMaterial].pTextureFilename = NULL;
}
}
----------------------------------------------------------------------
大家猜才会出现什么问题~ |
|