0

私は

timer = TTF_RenderText_Solid( tfont, timeStr.str().c_str(), txtColor ); 
applySurface(500, 30, timer, screen);

また、「画面」の表面には、キャラクターと壁も適用しました。しかし、何らかの理由で、「floorsurface」と「charsurface」をすでにNULLにしない限り、タイマーが表示されないようです。私は何か間違ったことをしていますか?

4

1 に答える 1

1

SDL_Flip(screen) の前に timerUpdate() を置いてみてください。SDL_Flip を呼び出してから、timerUpdate() を呼び出します。それで、OK、それでいい、次に画面をひっくり返したときに、テキストが表示されると思います。しかし、何が起こっているのかというと、画面が再び反転する前に、より多くのサーフェスを上にブリットしているということです。テキストの上にサーフェスをブリットしたため、テキストが表示されません。順番を入れ替えるだけなので、

timerUpdate();
if (SDL_Flip(screen) == -1) return 1; //Instead of the other way round

動作するはずです。

于 2011-05-04T14:37:37.020 に答える