【问题标题】:C++ sdl2 flickering on fade animationC ++ sdl2在淡入淡出动画上闪烁
【发布时间】:2014-07-04 00:42:56
【问题描述】:

我在更新循环中使用以下代码

    if (!flip){
        if (alpha > 0){
            alpha -= Ticks;
        }
        else{
            Ticks = 0;
            flip = true;
        }
    }
    else{
        if (alpha < 255){
            alpha += Ticks;
        }
        else{
            if (transition == 1){
                screenManager->ChangeState(new Menu(render));
            }
            Ticks = 0;
            alpha = 255;
            transition = 1;
            flip = false;
        }

    }

这是我的绘图代码

        if (transition == 0){
    background->Draw(&screen);
}
else{
    background2->Draw(&screen);
}


SDL_SetRenderDrawColor(render, 0, 0, 0, alpha);
SDL_RenderFillRect(render, &dstrect);

为什么在运行淡入动画时它会闪烁,如果可能的话,解决方案会很好。

【问题讨论】:

    标签: c++ sdl flicker visual-glitch


    【解决方案1】:

    解决了这个问题,对于任何想知道它的人来说,这是因为 alpha 低于 0 并高于 255,因为我添加了一个 double。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-17
      • 2015-06-07
      • 1970-01-01
      • 2013-03-06
      • 1970-01-01
      相关资源
      最近更新 更多