Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Membre à l'essai
    Homme Profil pro
    retraité développement loisirs
    Inscrit en
    janvier 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité développement loisirs

    Informations forums :
    Inscription : janvier 2012
    Messages : 50
    Points : 20
    Points
    20

    Par défaut Redimensionner une image / sdl

    bonjour,
    je charge des images sur SDL (des boutons par exemple) avec img_load,
    mais je n'arrive pas à les charger en changeant leur dimension, par exemple, en fonction de la largeur de ma fenêtre,
    quelqu'un peut m'aider ?
    mon exemple précis
    Bouton_blanc.bmp fait 36*36 pixels
    je voudrais l'afficher sur 28*28 pixels
    merci beaucoup
    Cordialement
    Alain

  2. #2
    Responsable 2D/3D/Jeux

    Avatar de LittleWhite
    Homme Profil pro Alexandre Laurent
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    16 668
    Détails du profil
    Informations personnelles :
    Nom : Homme Alexandre Laurent
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 16 668
    Points : 85 812
    Points
    85 812

    Par défaut

    Bonjour,

    Avec la SDL, il n'est pas possible de redimensionner quoi que ce soit.
    Toutefois, une solution existe. Il faut utiliser la SDL_gfx (qui est une bibliothèque rajoutant des fonctions à la SDL). Cette dernière contient des fonctions pour le redimensionnement.

    Sinon, vous pouvez aussi voir à faire des images de taille différente pour chaque résolution.

    Sinon, il faudra utiliser OpenGL (et refaire son renderer ou quelque chose de ce genre) ou plus simplement, la SFML.
    Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi
    La rubrique a aussi un blog !

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2011
    Messages
    264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : mai 2011
    Messages : 264
    Points : 448
    Points
    448

    Par défaut

    Hello,

    Comme l'a dit LittleWhite, utilise sdl_gfx.

    Il y a dans cette bibliothèque deux fonctions qui peuvent t'aider:

    Code :
    1
    2
    3
        SDL_Surface *rotozoomSurface(SDL_Surface * src, double angle, double zoom, int smooth);
     
        SDL_Surface *rotozoomSurfaceXY(SDL_Surface * src, double angle, double zoomx, double zoomy, int smooth);
    Toutes deux permettent de faire une rotation de la surface src suivant une angle de angle degrés (=0.0 pas de rotation), et de redimensionner la surface d'un ratio zoom (<1.0 dminue la surface, >1.0 augmente la surface). La variable smooth vaut 0 ou 1, suivant le type de rendu que tu veux (1 est plus 'joli').

    Pour ce qui est de SFML et OpenGl, je ne les connais pas.

    Edgar.

  4. #4
    Membre à l'essai
    Homme Profil pro
    retraité développement loisirs
    Inscrit en
    janvier 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité développement loisirs

    Informations forums :
    Inscription : janvier 2012
    Messages : 50
    Points : 20
    Points
    20

    Par défaut

    merci à tous les 2.
    n'étant pas coutumier des forums, j'avais oublié de demander une notification par email et je ne vois vos réponses que maintenant ;o))
    je vais voir la sdl_gfx
    cordialement

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •