Bonjour , je me suis mis il y a peu à la SDL dans le but de faire des petits jeux . J'ai compris comment manipuler les surfaces mais il y a un probleme avec l'affichage de texte . J'ai fait le code suivant :
#include <iostream>
#include<sdl/SDL.h>
#include <sdl/SDL_ttf.h>
using namespace std;
int pause();
int main()
{
SDL_Init(SDL_INIT_VIDEO);
SDL_Surface *texte;
SDL_Surface *ecran = NULL;
SDL_Rect Position;
ecran = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE);
SDL_Color color;
color.r=(SDL_MapRGB(ecran->format,255,0,0));
color.g=(SDL_MapRGB(ecran->format,0,255,0));
color.b=(SDL_MapRGB(ecran->format,0,0,255));
TTF_Font *police;
police = TTF_OpenFont("police.ttf", 32);
char message[] = "hello";
// Mise en place de du texte:
texte = TTF_RenderText_Solid(police,message,color);
Position.x = 300;
Position.y = 200;
SDL_BlitSurface(texte, NULL, ecran, &Position);
SDL_FillRect(ecran, NULL, SDL_MapRGB(ecran->format, 17, 206, 112));
SDL_Flip(ecran);
pause();
SDL_Quit();
}
int pause()
{
int continuer = 1;
SDL_Event event;
while (continuer)
{
SDL_WaitEvent(&event);
switch(event.type)
{
case SDL_QUIT:
continuer = 0;
}
}
}
Quand j'execute , je vois bien ma fenetre verte comme il faut . Mais pas une trace de texte .
Est ce que quelqu'un vois une erreur ou est ce que j'ai oublié quelque chose ?
PS : Escusez ce code plus que sale mais pour l'instant mes code sont plus des test qu'autre chose .
Merci