2013-03-30 42 views
0

我正在写一个简单的游戏。我的股票是一个错误,我无法弄清楚是什么原因。 在代码我写这篇文章:SDL不加载/显示正确的图像

DxFrame[0] = ImageLoader("Rome/Ball_Dx/RomeDx1.png"); 
DxFrame[1] = ImageLoader("Rome/Ball_Dx/RomeDx2.png"); 
DxFrame[2] = ImageLoader("Rome/Ball_Dx/RomeDx3.png"); 
DxFrame[3] = ImageLoader("Rome/Ball_Dx/RomeDx4.png"); 
DxFrame[4] = ImageLoader("Rome/Ball_Dx/RomeDx5.png"); 

SxFrame[0] = ImageLoader("Rome/Ball_Sx/RomeSx1.png"); 
SxFrame[1] = ImageLoader("Rome/Ball_Sx/RomeSx2.png"); 
SxFrame[2] = ImageLoader("Rome/Ball_Sx/RomeSx3.png"); 
SxFrame[3] = ImageLoader("Rome/Ball_Sx/RomeSx4.png"); 
SxFrame[4] = ImageLoader("Rome/Ball_Sx/RomeSx5.png"); 

但是,当我在监视器编译DxFrame [4]是不是有什么是应该的。事实上,他成为了SxFrame [0]。我不明白为什么会发生这种情况。

编辑 这是图像加载器:

 SDL_Surface* ImageLoader(string Image) { 

     SDL_Surface* LoadedImage = NULL; 

     SDL_Surface* OptimizedImage = NULL; 

     LoadedImage = IMG_Load(Image.c_str()); 

     OptimizedImage = SDL_DisplayFormat(LoadedImage); 

     SDL_FreeSurface(LoadedImage); 

     return OptimizedImage; 
     } 

我不觉得有什么曲子相关代码。

+0

请更具体一些,并发布一些相关的代码,没有人会阅读您的整个源代码。 – 2013-03-30 20:23:29

回答

1

你的数组可以容纳4个图像,但是你正在写入5个数据,它们会覆盖它后面的任何内容。