Coucou tout le monde , j'ai commencé le C il y a un mois , et j'adore vraiment.
Votre site m'a d'ailleurs beaucoup aidé.
J'ai commencé à programmer avec la SDL il y a quelques jours , et je me suis dis que l'affichage de textes et d'images étaient bien embêtant avec touts ces paramètres et ces textures à créer...
J'ai donc fait deux petites fonctions qui m'aident dans mon actuel projet pour me faciliter les taches.
Je vous les donnes (Je sais que c'est pas du super niveau , mais ça pourra toujours aider des débutant qui ce sont trouvé dans le même cas que moi)

Fonction Texte:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
 
char Texte[20] = "";
 
void print(SDL_Surface * surf , int posx,int posy,char* Text[])
{
    position.x=posx;
    position.y=posy;
    sprintf(Texte, "%s", Text);
    Text = TTF_RenderText_Blended(police, Texte, couleurGris);
 
    SDL_BlitSurface(Text, NULL, ecran, &position);
}
Bien sur à vous de modifier les variables , comme pour l'initilisation dur Char qui est volontairement petit.
(Ne pas oublier le SDL_Rect ici position mais que vous pourrez changer aussi)
L'intérêt de cette fonction est aussi que vous n'aurez pas besoin de charger une surface pour écrire.

Fonction Image:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
void affiche(SDL_Surface * surf,int posx,int posy)
{
    position.x=posx;
    position.y=posy;
    SDL_BlitSurface(surf, NULL,ecran,&position);
}
Certes elle est trés simple , mais elle m'a pas mal aidé pour le moment.

Voila , si vous avez des avis , des petites fautes quelques part , des petites idées d'amélioration de ces bouts de code , c'est avec plaisir que je les recevrais.


PS:J'améliorerais surement la 1ère fonction pour permettre le choix de la surface qui sera blitter ainsi que le choix d'une couleur car dans l'exemple donnez la couleur doit déjà être initialisée.Et peut ètre un système qui modifier la taille du tableau histoire de pas bouffer de la mémoire dans le vent