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

Développement 2D, 3D et Jeux Discussion :

Tile Mapping : présentation générale


Sujet :

Développement 2D, 3D et Jeux

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


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

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

    Informations forums :
    Inscription : mai 2008
    Messages : 25 952
    Points : 207 570
    Points
    207 570
    Billets dans le blog
    85
    Par défaut Tile Mapping : présentation générale
    Bonjour à tous,

    Voici une le premier tutoriel d'une nouvelle série sur le « Tile Mapping » ou, la manière de faire un niveau et de le faire défiler suivant les mouvements du personnage.
    Ce tutoriel présente les bases et définit les concepts pour correctement débuter dans la mise en place du niveau.

    Bonne lecture.
    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.

  2. #2
    Expert confirmé
    Avatar de Vetea
    Homme Profil pro
    Technicien Test - Maintenance - Production - BE dans une PME d'electronique
    Inscrit en
    février 2005
    Messages
    2 061
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Test - Maintenance - Production - BE dans une PME d'electronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : février 2005
    Messages : 2 061
    Points : 5 502
    Points
    5 502
    Par défaut
    Article indispensable pour tout futur créateur de jeux 2D !!
    Le seul point noir pour moi est ce C++ avec lequel je fais la guerre dans mon dernier projet ... Le code source final est incompréhensible pour moi alors que je connais la technique depuis des lustres ...
    Mais sans doute que c'est ma mauvaise volonté ...

    L'explication et le cheminement du principe est un modèle du genre !
    Bravo !!
    Développeur - Créateur Amateur de Jeux vidéos
    Visitez ma page dédiée
    Visitez mon espace Itch.io
    Mon canal Discord

  3. #3
    Membre régulier
    Inscrit en
    mars 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : mars 2006
    Messages : 126
    Points : 103
    Points
    103
    Par défaut
    Vraiment Bravo !

    C'est simple, clair, agrémenté d'excellents exemples que l'on connait tous !

    Vivement la suite !

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    octobre 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2007
    Messages : 18
    Points : 41
    Points
    41
    Par défaut
    Bonjour,
    Tout d'abord, je tiens à féliciter l'auteur pour son article car je trouve le tutoriel très clair et accessible.
    Il me semble néanmoins avoir noté une petite erreur.
    Ensuite, je fais un double for. Je fixe Rect_dest.x et y à la bonne position (qui dépend de i et de j), puis je définis Rect_dest.x, qui lui dépend directement du nombre correspondant. (Nous allons détailler cette ligne ci-dessous.)
    Je crois qu'il s'agit plutôt de Rect_source.x à la place de Rect_dest.x

    Cordialement.

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    mars 2013
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Enseignement

    Informations forums :
    Inscription : mars 2013
    Messages : 426
    Points : 32 558
    Points
    32 558
    Par défaut
    Parfait, je dirais même plus: "Divin". La suite, une suite et vite.

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


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

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

    Informations forums :
    Inscription : mai 2008
    Messages : 25 952
    Points : 207 570
    Points
    207 570
    Billets dans le blog
    85
    Par défaut
    Bien vu
    Citation Envoyé par kriska Voir le message
    Je crois qu'il s'agit plutôt de Rect_source.x à la place de Rect_dest.x
    C'est maintenant corrigé.
    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.

  7. #7
    Membre régulier
    Profil pro
    Développeur
    Inscrit en
    mai 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : mai 2002
    Messages : 84
    Points : 102
    Points
    102
    Par défaut
    Excellent . Comme les autres, j'ai hâte de lire la suite

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    février 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2007
    Messages : 17
    Points : 27
    Points
    27
    Par défaut
    Merci Beaucoup,

    Cela va beaucoup m'aider pour apprendre à développer dans ce domaine,
    je travaille avec Vs Studio 2012, je pense que cela doit être pareil.

    Encore Bravo, et j'attends avec impatience, les test de collisions pour le décor.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juin 2007
    Messages : 14
    Points : 17
    Points
    17
    Par défaut
    Merci pour ce superbe guide !

    J'ai vraiment hâte de lire la suite

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


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

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

    Informations forums :
    Inscription : mai 2008
    Messages : 25 952
    Points : 207 570
    Points
    207 570
    Billets dans le blog
    85
    Par défaut
    Le sommaire de tous les articles de la série est présent ici.
    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.

  11. #11
    Inactif
    Homme Profil pro
    c++ java php javascript
    Inscrit en
    octobre 2013
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : c++ java php javascript
    Secteur : Finance

    Informations forums :
    Inscription : octobre 2013
    Messages : 374
    Points : 79
    Points
    79
    Par défaut
    Je vais faire hurler dans les chaumières mais c'est pour votre bien.

    Ces tutos c'est une initiative généreuse mais c'est une compilation de toutes les erreurs de débutant. Je les connais très bien pour les avoir faites aussi vu qu'elles sont en permanence répercutées dans les tutoriels.

    On apprend mal avec les tutos faits par des débutants, on apprend beaucoup mieux avec les sources des professionnels... (par exemple http://en.wikipedia.org/wiki/List_of...ce_video_games)


    Liste non exhaustive de toutes les erreurs relevées :


    - je vois des dimensions genre 24, 15, 13... c'est pas comme ça qu'on fait. On n'utilise que des dimensions puissance deux pour pouvoir profiter des opérations binaires, c'est la base même des tile engine depuis leurs origines, à la base c'était du hardware japonais (qui a désormais traversé l'océan pacifique avec l'apparition des smartphone) donc ça fonctionne comme les textures mais de façon beaucoup plus intelligente (et compliquée donc).


    - c'est rendu avec le blitting natif de la lib sdl. C'est une mauvaise habitude. Ca aurait été justifié pour un langage super lent genre javascript mais en c++ on peut faire mieux. Si quelqu'un veut adapter ça sur la lib sdl 2.0 on va avoir un gros problème de performance avec cette approche car ça veut dire qu'on rend chaque tuile avec un sprite gpu, donc un appel gpu à chaque fois. Et de toutes façons même sur la vieille sdl 1 on peut faire des choses beaucoup plus intéressantes en programmant soi-même le moteur graphique afin de programmer les vrais effets graphiques des jeux à tile, car là on va avoir un rendu ultra-pauvre.


    - il n'y a qu'un seul tilesheet donc on va être coincés pour le chargement des niveaux, l'animation des tuiles, les changements d'environnement, etc.


    - il y'a une confusion entre la grille de tuiles et la grille des objets. Ca n'est pas du tout les mêmes, ce sont des tableaux différents. Là la gestion des pnj ou des collisions va être une horrible galère et la transition entre deux maps va être tout bonnement impossible.


    - un éditeur de maps ne torture pas le graphiste à lui faire dessiner chaque tuile à la main. Il permet de dragger des objets qui sont convertis en tuiles en fonction de l'environnement. (dans le cas de super mario les maps ne contenaient qu'une liste d'objets, qui étaient convertis en blocs 16*16 au chargement de map, et ces blocs étaient eux-mêmes convertis en tuiles 8*8 au fil du scrolling)


    - la fonction "Affine" pour les collisions c'est du calcul de gros bourrin gaspilleur de cpu. Normalement on utilise l'algo de collision aabb.


    - puisqu'on a un éditeur de maps, autant en profiter pour se simplifier la vie et encoder directement du binaire qu'on va charger en une seule ligne de code au lieu de s'embêter à parser du ascii



    Voilà... je ne jette pas la pierre à l'auteur, toutes ces erreurs là je les ai faites aussi. J'avais fait un tuto à l'époque, et puis quand j'ai vu comment ils bossent chez les pros je l'ai viré du web.

    Sinon pour ceux que ça intéresse d'en savoir plus:

    - sur windows 8 et sans doute d'autres os smartphone, les tuiles sont rendues directement par la carte vidéo, comme sur les consoles japonaises, on voit mieux comment ça fonctionne

    - pour les fans du rendu software, les tuiles en rendu cpu ça se rend exactement comme font les émulateurs, pixel par pixel avec un moteur graphique basé sur les scanlines, et les sprites également
    nous devons inventer la langue de feu pour crâmer la langue de bois

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    avril 2011
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2011
    Messages : 368
    Points : 148
    Points
    148
    Par défaut
    @jean_kevin_musclor ce commentaire arrive un peu tard mais n'hésite pas toi, a nous faire un tuto pas à pas avec une méthode simple et très pédagogique du tilemaping, scrolling, collision, etc... fait dans les studio de jeux vidéo comment eux code t-ils leurs jeux je suis très demandeur comme beaucoup aimeraient savoir comment on fait chez les pro.

    Malheureusement mois qui suis débutant je doit me contenté de ce que je trouve sur le net et faire confiance comment faire autrement.

    En tous cas pour l'instant sur internet le seul qui a daigné nous donné un peu de son savoir de son temps pour nous en faire profiter a des gens comme moi c'est LittleWhite(Fvirtman).

    Je pense maintenant que si il devait refaire aujourd'hui un tuto sur le tilemapping sans doute si prendrait-il autrement.

    Merci pour son tuto.

  13. #13
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : avril 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Java
    Bonjour a tous ,

    J'ai juste une petite question , est-ce que cette methode est aussi valable pour le langage java ?
    J'utilise Eclipse pouvez vous m'aider ?

    Merci

  14. #14
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    juin 2010
    Messages
    6 791
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : juin 2010
    Messages : 6 791
    Points : 31 093
    Points
    31 093
    Billets dans le blog
    4
    Par défaut
    Bien sur, le tile-mapping est langage-agnostique et IDE-agnostique aussi d'ailleurs.
    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.

  15. #15
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : avril 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci j'ai trouve le moyen

Discussions similaires

  1. Présentation générale de l'ERP SAP
    Par Fleur-Anne.Blain dans le forum Contribuez
    Réponses: 2
    Dernier message: 29/09/2009, 10h06
  2. Supprimer le sous menu Présentation Générale?
    Par nilz2000 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 21/10/2008, 12h32
  3. [Portlet] Présentation générale du cycle de vie
    Par asmoune dans le forum Portails
    Réponses: 2
    Dernier message: 12/09/2008, 09h25

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