在屏幕上绘制表面时,帧速率下降

时间:2013-04-10 21:19:05

标签: c++ sdl

我刚刚开始在SDL中制作另一个小游戏,我制作了我的2个玩家 - 由圆圈的上半部分代表。到目前为止,我画了一个背景,两个玩家在上面。

if (SDL_Init(SDL_INIT_VIDEO) < 0 ) return 1;
    if (!(screen = SDL_SetVideoMode(WIDTH, HEIGHT, DEPTH,SDL_HWSURFACE| SDL_DOUBLEBUF)))
    {
        SDL_Quit();
        return 1;
    }

    SDL_Surface* surface2 = SDL_CreateRGBSurface(SDL_HWSURFACE, WIDTH, HEIGHT, 32,
                                   rmask, gmask, bmask, amask);

    SDL_FillRect(surface2, 0, SDL_MapRGBA(surface2->format,0,0xAA,0,0xFF));

        //in the while loop
        SDL_BlitSurface(surface2,0,screen,0);

当我移动播放器时,每次移动移动10px。我已经用定时器实现了平滑运动,所以情况并非如此。有趣的部分是,当我选择让表面2变黑时 - 在开始时没有填充,那么一切都很顺利。 我现在用一种颜色填充屏幕表面,它也运行得很顺畅。那可能是什么问题?

0 个答案:

没有答案