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 :

Besoin de conseils sur la gestion d'images avec SDL


Sujet :

SDL

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Points : 136
    Points
    136
    Par défaut Besoin de conseils sur la gestion d'images avec SDL
    Bonjour.

    Je me prépare à commencer sérieusement la programmation de mon jeu. Il s'agit d'un jeu 2D en vue isométrique, qui utilise la bibliothèque SDL.
    J'aurais besoin de gérer des milliers d'images, en terme de stock, et des milliers d'images, en duplication dans le jeu.
    Sachant qu'en plus, j'aurais besoin d'un trie, à chaque frame, de la plus part des images, afin que celles si se placent bien les unes derrières les autres en fonction de leur position.

    Voilà ou je sollicite des conseils : il y a t'il des méthodes particulières et optimisé pour ce genre de problèmes?

    Je pensais partir comme ceci, en mettant à chaque image un numéro, qui serait rangé dans un tableau:

    SDL_Surface ImagePlan1[1000];

    SDL_Surface ImagePlan2[10000];

    SDL_Surface ImagePlan3[10000];

    charger avant chaque niveau les images nécessaire, puis les afficher a chaque frame depuis les positions contenus dans les objets respectifs de chaque éléments, sachant que toutes les images du plan 2 devront être triés, avec, par ex, un std::sort.

    Est-ce une façon honnête de procéder (j'entends qui ne risque pas de provoquer des ralentissement)?

    Merci si vous pouvez me conseiller.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 116
    Points : 32 969
    Points
    32 969
    Billets dans le blog
    4
    Par défaut
    Pour "optimiser" ce problème, faudrait commencer par jeter la SDL, à moins que tu n'utilises SDL2 - on dirait pas, et utiliser SFML.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Octobre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Octobre 2013
    Messages : 11
    Points : 19
    Points
    19
    Par défaut
    Pour optimiser ce problème, il y a plusieurs choix :
    -faire un jeu en tile, il y aurat moins d'images a charger, on peut elliminer sans problème les images qui sortent de l'ecran
    -utiliser des structure de séparation de l'espace comme des quatre...
    Le mieux, pour optimiser, c'est d'optimiser au maximin l'affichage, car c'est lui qui prend le plus de temps.

    En espérant t'avoir aider

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Points : 136
    Points
    136
    Par défaut
    Merci pour vos réponses.

    la SFML est-elle libre de droit comme la SDL ?

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


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 865
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 865
    Points : 219 078
    Points
    219 078
    Billets dans le blog
    121
    Par défaut
    Bonjour,

    Oui : http://sfml-dev.org/license.php (Attention SFML, c'est du C++)
    Par contre, Bousk a dit que vous pouviez utiliser la SDL, mais principalement, que si vous utilisez la SDL 2 (voir nos tutoriels).
    Voici une actualité annonçant les améliorations : http://jeux.developpez.com/actu/5979...GL-3-0-arrive/
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

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

  6. #6
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    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 217
    Points : 10 152
    Points
    10 152
    Par défaut
    La SDL est très bien , j’utilise toujours la première ça dépend de la résolution et de ce qu'on affiche si un ordi récent n'est pas capable de faire en software ce que faisait la SNES c'est que le gars programme comme des pieds, après pour ta question 2 plan de 10000 c'est énorme et non ce n'est clairement pas une bonne façon de procédé , je ne sais pas quel jeu tu as en tête mais normalement y'a moyen de réduire les ressources.

  7. #7
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Points : 136
    Points
    136
    Par défaut
    Merci pour les réponses.

    En effet, j'ai revu la chose, car mon système ne parait pas net. On m'a parlé de pointeur intélligent et d'architecture mvc, je crois que c'est la solution.
    La SFML est-elle une bibliothèque plus complète, ou optimisé que la SDL selon vous?

  8. #8
    Membre émérite Avatar de Cirrus Minor
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2014
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2014
    Messages : 953
    Points : 2 615
    Points
    2 615
    Par défaut
    Bonjour mazertys,
    la SFML est plutôt complète, oui, mais disponible sous moins de plateformes que la SDL il me semble.
    Si tu destines ton application au desktop (Windows - Linux - OSX), et si tu le codes en C++, je te conseille SFML.

    Tu peux voir une démo de mon jeu pas encore optimisée ici (avance vers le milieu de la vidéo pour voir plein de sprites ):
    http://www.developpez.net/forums/d14...r/#post8017426
    Chaque créature vivante ou décédée, chaque tâche de sang, chaque particule, etc... est un sprite à part entière - avec sa physique et un Z-sort de l'ensemble à chaque frame - , et l'application tourne bien.

    SFML permet nativement d'utiliser les vertex-array qui permettent de dessiner un grand nombre de sprite avec un seul appel draw OpenGL, et je compte l'utiliser lors de mes optimisations pour dessiner "d'un coup" toutes les particules, tout le sang, tous les cadavres.

  9. #9
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Points : 136
    Points
    136
    Par défaut
    Salut, et merci pour ta réponse.

    Bien sanglant ton jeux, et bien remplie, bien joué!

    Perso je suis débutant, mais je gère déjà un peu la SDL sans trop de soucis, mais j'ai bien envie de me mettre à la SFML, qui a l'air plus optimisé, et je ne cherche pour l'instant qu'a faire un jeu basic sur pc.

    Seulement, quand j'essaye de l'installer, ca se complique. Il faut apparemment que je recompile le dossier SFML avec CMake. J'ai du mal. Faut il avoir des notions d'informatique avancé pour ce genre d'installation?

  10. #10
    Membre émérite Avatar de Cirrus Minor
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2014
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2014
    Messages : 953
    Points : 2 615
    Points
    2 615
    Par défaut
    Citation Envoyé par mazertys17 Voir le message
    Seulement, quand j'essaye de l'installer, ca se complique. Il faut apparemment que je recompile le dossier SFML avec CMake.
    Il ne faut pas forcément la recompiler.
    Tu es sous quel système, et quel est ton environnement de développement ?

  11. #11
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Points : 136
    Points
    136
    Par défaut
    sous windows 8, et j'utiliser code::block, aparamment gcc

  12. #12
    Membre émérite Avatar de Cirrus Minor
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2014
    Messages
    953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2014
    Messages : 953
    Points : 2 615
    Points
    2 615
    Par défaut
    J'ai la même configuration, donc non, pas besoin de recompiler !
    Tu vas à la page de téléchargement de SFML: http://sfml-dev.org/download/sfml/2.1/index-fr.php
    Et tu as besoin de cette version: GCC 4.7 TDM (SJLJ) - 32 bits

  13. #13
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2014
    Messages : 521
    Points : 136
    Points
    136
    Par défaut
    Je vien d'essayer, ca ne marche pas non plus.
    J'ai même retéléchargé code::block CGG ca ne marche pas non plus...il me dit:
    "le point d'entrée de procédure_gxx_personality_v0 est introuvable dans la bibliothèque de liens dynamiques..."

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/10/2012, 16h48
  2. Besoin de conseil sur les classes
    Par SuperWeight dans le forum MFC
    Réponses: 1
    Dernier message: 04/06/2007, 21h44
  3. Conseils sur l'utilisation des images.
    Par StreetJeopardy dans le forum Java ME
    Réponses: 1
    Dernier message: 17/04/2007, 18h31
  4. besoin de conseil sur le démarrage d'un projet
    Par kollyv dans le forum Général Java
    Réponses: 5
    Dernier message: 06/04/2007, 18h32
  5. Besoin de conseils sur une application
    Par Jim_Nastiq dans le forum Langage
    Réponses: 12
    Dernier message: 12/04/2006, 12h43

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