0

テキストボックスを作成しようとしているので、この関数を作成して画面にテキストを表示し、

私は fps レギュレーターを持っているので、関数は 1 秒間に 33 回呼び出されます。

私は古いコンピュータを持っています (64 MB ビデオ RAM と 1 RAM + Pentium 4 CPU 2.8GHz)

この関数をコードから削除すると、フリーズしないのはなぜですか?

MESSAGE (SDL_Surface *MESSAGE = NULL;) は、インクルード行の下のコードの上部で宣言されています。(スクリーンもそうです)

void text_box()
{
    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #1" , noir ); 
    apply_surface( 2, 503, MESSAGE, SCREEN );   
    SDL_FreeSurface(MESSAGE);                 

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #2" , noir );
    apply_surface( 2, 510, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #3" , noir );
    apply_surface( 2, 517, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #4" , noir );
    apply_surface( 2, 524, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #5" , noir );
    apply_surface( 2, 531, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #6" , noir );
    apply_surface( 2, 538, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #7" , noir );
    apply_surface( 2, 545, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #8" , noir );
    apply_surface( 2, 552, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #9" , noir );
    apply_surface( 2, 559, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #10" , noir );
    apply_surface( 2, 566, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #11" , noir );
    apply_surface( 2, 574, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);

    MESSAGE = TTF_RenderText_Solid( font,  "Ligne #12" , noir );
    apply_surface( 2, 581, MESSAGE, SCREEN );
    SDL_FreeSurface(MESSAGE);
}
4

0 に答える 0