|
bitmap=LoadImageFromFile("e:\\bomb.dds");
if(bitmap==NULL)
{
MessageBox(NULL,"loading is wrong!","dfs",MB_OK);
return 0;
}
int i=0;
int j=0;
for(int index=0;index<12;index++)
{
i=index%6;
j=index/6;
RECT rect={i*43,j*36,(i+1)*43,j*36};
if(FAILED(pd3dDevice->CreateOffscreenPlainSurface(43,36,D3DFMT_A8R8G8B8,D3DPOOL_DEFAULT,&animation[index],0)))
{
MessageBox(NULL,"CRETEAOFFSCREEN IS WRONG!","ERROR",MB_OK);
return 0;
}
if(FAILED(pd3dDevice->StretchRect(bitmap,&rect,animation[index],0,D3DTEXF_NONE)))
{
char string[20];
sprintf(string,"THE %d STEP IS WRONG",index);
MessageBox(NULL,string,"error",MB_OK);
return 0;
}
函数主体就是这样,其中BITMAP是一个表面,LOADIMAGEFROMFILE是一个函数,返回一个表面,ANIMATION是一个表面的数组,大小为12,编译器老是提示在最后一步,也就是STRETCHRECT这里出错,请问是为什么呢?我看了很久都没有发现哪里不对!! |
|