好的,所以我有这段代码,它只是遍历我的对象数组,对需要进行 blitted 的内容进行 blitting:
void Render()
{
for(int Index = 0; Index < MAX_OBJECT_INSTANCES; Index++)
{
if(Game::ObjectArray[Index].IsActive() == false){}
else
{
if(Game::ObjectArray[Index].IsHidden() == false)
{
SDL_BlitSurface(Game::ObjectArray[Index].CurrentSprite, NULL, Buffer::Screen, &Game::ObjectArray[Index].Position);
}
}
}
}
我查看了调用堆栈,发现了这个:
0x681247d8 SDL_UpperBlit
我不知道如何解决这个问题。我还应该注意我正在使用 SDL 混音器和 SDL 图像。