IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SDL Discussion :

question animation SDL


Sujet :

SDL

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut question animation SDL
    Bonjour à tous, je suis en train de programmer un petit jeu en SDL en me basant plus ou moins sur le sokoban du tuto de mateo sur openclassrooms et j'hésite sur la methode à choisir pour modifier le sprite du perso:

    -dans le tuto mateo crée un tableau de 4 surfaces (une pour chaque coté du personnage) les sprites sont donc tous chargés puis blittés via un pointeur maispour mon projet les personnages sont animés donc il faudrait que je créée des tableaux de tableaux de tableaux (surface[coté du perso][type d'animation(marcher, sauter etc..)][etapes de l'animation]. Ce qui fait quand meme beaucoup de surfaces à charger.

    -sinon il y à ce que j'avais fait avant de regarder le tuto: je créée une seule surface et une énumeration listant toutes les positions possibles du perso puis je fais un switch sur cette enumeration et je change l'image envoyée sur la surface avec IMG_Load
    petit exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    switch(*SideElizabeth) 
            {
            case GAUCHE:
                *imageZabeth = IMG_Load("elz_face_gauche.png");
            break;
            case DROITE:
                *imageZabeth = IMG_Load("elz_face_droite.png");
            break;
            case HAUT:
                *imageZabeth = IMG_Load("elz_haut.png");
                break;
            case BAS:
                *imageZabeth = IMG_Load("elz_bas.png");
                break;
            case AVANCE_GAUCHE:
                *compteurDePas += 1;
                if(*compteurDePas > 6)
                    *compteurDePas = 0;
                if(*compteurDePas == 1)
                    *imageZabeth = IMG_Load("elz_pas_1_gauche.png");
                else if(*compteurDePas == 2)
                    *imageZabeth = IMG_Load("elz_pas_2_gauche.png");
                else if(*compteurDePas == 3)
                    *imageZabeth = IMG_Load("elz_pas_3_gauche.png");
                else if(*compteurDePas == 4)
                    *imageZabeth = IMG_Load("elz_pas_4_gauche.png");
                else if(*compteurDePas == 5)
                    *imageZabeth = IMG_Load("elz_pas_5_gauche.png");
                else if(*compteurDePas == 6)
                    *imageZabeth = IMG_Load("elz_pas_6_gauche.png");
            break;
            }
    d'après vous quelle est la meilleure solution?
    merci!

  2. #2
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Oulà , je te conseille de pas suivre ce cours , il est sacrément mauvais et encore plus pour la SDL

    Vu ton code c'est la pire solution possible ,vu comme il est écrit on peut penser que tu charge les animation in game
    (vu que tu fais des if sur les loader ce qu'on ne fait quasiment jamais)

    Normalement dans un jeux vidéo 2D on charge toutes les animations dans un spritesheet comme ça par exemple :


    Il y'a un petit cours ici : https://alexandre-laurent.developpez...animations-2D/

  3. #3
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 525
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 525
    Par défaut
    bonjour c'est exact il faut faire des sprite sheets ensuite de toute façon il faut se faire obligatoirement son propre éditeur de scènes et d'animations.
    Sinon des éditeurs 2d ça se trouve.

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut
    merci bien!

    EDIT: petite question, à quoi servent les trois images identiques au début des sprite sheets? (pas sur le tien mais sur la plupart de ceux que j'ai trouvé)

  5. #5
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Je vois pas de quoi tu parle.
    Tu as un exemple ?

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut
    celui que j'utilise: Nom : elizabeth.png
Affichages : 758
Taille : 45,4 Ko

  7. #7
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    A rien , mais peut être qu'il voulait indiquer pour l'animation des yeux ensuite.
    Ce genre de sprite sheet sont pas officiel , c'est juste des amateurs qui le font et y'a bien sur quelque fois des erreurs dedans !

    Sinon après je précise juste au cas où que le C + SDL n'est plus vraiment une techno d'actualité pour faire du Jeux Vidéo
    Enfin si ton but c'est d'en faire ,tu as pris une des voix les plus longues/complexe.

  8. #8
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 95
    Par défaut
    ok merci pour les conseils! je ne prévoyais pas forcément de me lancer dans la SDL, je voulais apprendre quelques bases de C avant de me diriger vers du c++ ou c# (j'hésite encore) du coup j'ai suivi le tuto de mateo et je me suis laissé entrainer. mais effectivement je vais passer à autre chose, je pense que C++/SDL2 serait déja plus pertinent.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. animation SDL C
    Par Rémi1995 dans le forum Débuter
    Réponses: 8
    Dernier message: 01/10/2015, 03h26
  2. Questions generales SDL /OpenGL / SFML
    Par hpfx dans le forum SDL
    Réponses: 1
    Dernier message: 20/03/2009, 00h16
  3. Question OpenGL, SDL, Ogre3D, Illricht & PhysX
    Par terminator59140 dans le forum C#
    Réponses: 11
    Dernier message: 04/05/2008, 11h52
  4. Question basique (sdl)
    Par insomniak dans le forum SDL
    Réponses: 2
    Dernier message: 24/10/2005, 19h03
  5. [ Question ] Animer des sprites 3D
    Par Dam)rpgheaven dans le forum OpenGL
    Réponses: 2
    Dernier message: 19/07/2004, 17h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo