Pergunta

Eu tenho um

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

e na superfície da 'tela' também apliquei meu personagem e minha parede.Mas, por algum motivo, não consigo ver o cronômetro, a menos que já tenha NULL a 'superfície do piso' e a 'superfície de caractere'.Estou fazendo algo errado?

Foi útil?

Solução

Tente colocar timerUpdate () antes de SDL_Flip (tela).Você está chamando SDL_Flip e, em seguida, chama timerUpdate ().Então você pensa, OK, tudo bem, da próxima vez que a tela for virada, verei o texto.Mas o que está acontecendo é que você está borrando mais superfícies no topo antes que a tela seja virada novamente, e então você não pode ver o texto porque você borrou as superfícies em cima dele.Tudo o que você precisa fazer é mudar a ordem, então

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

deve funcionar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top