FabHacker
Messages postés4Date d'inscriptionmercredi 4 décembre 2002StatutMembreDernière intervention 8 avril 2007
-
4 avril 2007 à 23:02
cs_manidan
Messages postés1Date d'inscriptionvendredi 10 avril 2009StatutMembreDernière intervention 1 février 2010
-
1 févr. 2010 à 08:04
Bonjour,
Je travail sur un petit projet en SDL (le classique Snake) et le petit jeu fonctionne correctement.
Cependant, il est nécessaire que l'éxecutable soit placé dans une arborescence bien particulière par rapport aux BMP utilisés pour que les images se chargent correctement. Voila pourquoi dans un soucis de portabilité, j'aimerai pouvoir inclure les BMP directement dans l'éxecutable pour n'avoir au final qu'un seul et unique fichier nécessaire au bon fonctionnement de l'application.
Celui là semble correcte, car à la compilation le taille de l'exe augmente (et l'icone est utilisée).
Après, c'est pour l'utilisation que j'ai un problème... je ne voie pas du tout comment faire !
J'ai vu dans certains projets un ressources.h, j'ai donc fait cela:
Mais je ne suis pas plus avancé. Je ne voie pas comment accèder à mes ressources dans mon projet.
Avec les foncions SDL, je charge les images avec leur chemin "images/monimage.bmp" par exemple.
Comment substituer avec l'image en ressource ?
FabHacker
Messages postés4Date d'inscriptionmercredi 4 décembre 2002StatutMembreDernière intervention 8 avril 2007 5 avril 2007 à 20:17
Malgré mes rechercher et ma bonne volontée je n'arrive toujours pas à voir comment proceder...
Mon projet utilise la librairie standard SDL.
Voila le code de la fonction me permettant de charger une image:
SDL_Surface *charger_image(char *filename) {
//L'image qui est chargé
SDL_Surface* loadedImage = NULL;
//L'image optimisée que nous allons utiliser
SDL_Surface* optimizedImage = NULL;
//Chargement de l'image
loadedImage = IMG_Load(filename); // <---------------- LIGNE A SUBSTITUER
//Si l'image est bien chagée
if(loadedImage != NULL)
{
//Création de l'image optimisée
optimizedImage = SDL_DisplayFormat( loadedImage );
//Libération de l'ancienne image
SDL_FreeSurface( loadedImage );
}