簡體   English   中英

C ++ SDL2在淡入淡出動畫時閃爍

[英]C++ sdl2 flickering on fade animation

我在更新循環中使用以下代碼

    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);

為什么在運行淡入淡出動畫時它會閃爍,如果可能的話,一個解決方案會很好。

解決了這個問題,對於任何想知道的人來說,這是因為alpha低於0且高於255,因為我要添加一個double。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM