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

API graphiques Discussion :

Comment créer un long décors en dessin style rayman origins ?


Sujet :

API graphiques

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut Comment créer un long décors en dessin style rayman origins ?
    Bonjour a tous, je me permets de consulter ici car j'ai un souci qui dure depuis pas mal de temps et je n'arrive pas à trouver de solutions...

    En ce moment, je réalise en binôme un jeu vidéo de type run and gun (metal slug, Contra, Alien hominid, etc...) et je souhaite réalisé le décors (ou plutôt LES décors) de fonds, les background (il me semble que cela se nomme ainsi). Cependant je ne trouve pas de logiciel de dessin qui me permette de réaliser un (très) long background... Dernièrement j'ai joué a rayman origins et les décors sont fait main, comme je souhaite le faire l'aide de ma tablette graphique, mais ils sont long...

    De ce fait : comment réaliser un décors dessiné d'un niveau ? Existe t'il un logiciel qui permette de faire un long dessin panoramique ? (J'ai testé Flash qui n'est pas assez long en terme de panoramique). (Si quelqu'un connait toon boom et sait comment enregistrer un très long dessin et non le cadre uniquement je suis preneur également)

    Merci de vos réponses, cela fait un mois que je me penche sur le sujet sans avoir de réponse...

    Cordialement.

  2. #2
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    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 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Ben tous simplement que rayman ou même metal slug ne possédait pas un background aussi long que le niveau.
    Je m'explique, admettons si tu fais une image de 30000 pixel de long et de 240 de hauteur ça fait en taille octet 7200000 si tu utilise une palette (comme metal slug) ,dessiné donc sans palette c'est x3.
    Tu peux aisément deviné que 7 mo (ou 21mo sans palette) de mémoire c'est énorme pour époque pour la PS elle avait :
    RAM principale : 2 Mio
    RAM vidéo : 1 Mio
    et la Neo Geo c'est encore pire
    RAM : 64 kio de mémoire de travail,
    RAM : 74 kio de mémoire vidéo

    64 kio de mémoire vidéo principale
    2 kio de "fast video"
    8 kio de "palette RAM

    Pour contourné ce probleme , il partitionné le background a époque la résolution était souvent du 256×224 ou 320×224 ,donc il avait en mémoire que 2 background l'actuelle et le suivant.
    Et donc le background aussi long soit - il il prenait en mémoire que 320x224x2 pour rayman soit 70ko x2 (l'actuelle et le suivant) oux3 sans palette, taille tout a fait admissible pour la playstation.

    Pour la Neo geo il est probable qu'elle avait une optimisation particulière comme la snes (bon je pourrais encore parler optimisation , pour la neo geo il y avait 65 536 couleur possible donc du RGB 16 bits).
    La snes pour un BG de 256x224 (pour contra 3 admettons) ne prenais que 28672 octets ! en 16 couleur , en 4 couleur elle prenais la moitié (mais je pense qu'il bossait avec des tileset pour les BG comme la plupart des jeux de époque).

    Mais en tous cas il bossait jamais avec des BG immense , soit il le divisait en tileset soit il le partitionné.

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Merci de cette précision Kannagi, cependant même en partitionannt comment procéder, je vois plein de jeux avec ds background en longeur, des beat em all en passant par les jeux de plates formes, quel logiciel utilisé pour créer un background ? Même en partitionnant ?

  4. #4
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    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 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Je ne connais pas de logiciel qui le fait automatiquement , mais tu peux partitionner un BG imaginons de 80000 pixel de long,dans une fentre de 800x600 donc ça te fait 100 BG qu'il faudra afficher les un a la suite des autres ,n' importe que logiciel gimp ou photoshop le permet , tu peux afficher une grille pour mieux découper ton BG.

  5. #5
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    ok merci c'est ce que je vais faire, partitionner le dessin en plusieurs parties que le programmeur ré-assemblera... Du moins c'est comme ca que ca marche ? c'est le programmeur qui re-assemble ?

  6. #6
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    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 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Oui ça marche comme ça , c'est le programmeur qui ré-assemblera

  7. #7
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    ok merci de ta réponse ^^
    Je me sens moins stressé la ^^

  8. #8
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Plus d'infos sur comment ça fonctionne sur Rayman ( et comment ça devrait fonctionner dans l'idéal ... ) :
    [ame="http://www.youtube.com/watch?v=XoLpPw864eA"]Rayman Legends: UbiArt Engine Explored - YouTube[/ame]
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  9. #9
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Vidéo très intéressante mais qui montre une façon de travailler assez éloignée de comment je procède...

    De mon côté, je dessine le décors et les différents backgrounds seulement en 2D, juste avec une tablette graphique, là dans la vidéo j'ai l'impression qu'ils utilisent de la programmation et de la 3D, mais je peux me tromper, ne connaissant rien à la programmation...

    Pour ma part, je dessine le niveau avec le plan 1 sur le lequel le héros va marcher, le plan 2 en arrière plan et un plan 3 encore plus éloigné... tout cela fait main... C'est pour quoi au départ dessiné uniquement un seul plan sans le découper été l'idéal, mais vu que cela est impossible, je vais faire plusieurs morceaux...

    Cependant j'ai vu pas mal de projets en cours sur le forum utilisant des background en long, je vais aller demander leur façon e procéder et voir si je ne peux pas m'améliorer... Merci encore pour la vidéo.

  10. #10
    Membre chevronné Avatar de Astraya
    Homme Profil pro
    Consommateur de café
    Inscrit en
    Mai 2007
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Consommateur de café
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 043
    Points : 2 234
    Points
    2 234
    Par défaut
    Le principe reste le même que pour un monde 3D. Tu organises les assets dans un espace. Tu as besoin de programmation pour réaliser la même chose. C'est principalement du frustrum et occlusion culling voir portail culling.

    Divises ton background en plusieurs objets avec un fond uni ou répété. Puis tu l'habille avec des plus petits objets. Par exemple, un fond orange uni.. un château en fond, de la fumé, des personnages, des passerelles etc.. tout ceci sont des éléments distinct . Tu les charges et les décharges en fonction de ou tu est rendu sur le flow du niveau.
    Homer J. Simpson


  11. #11
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Ben j'ai fait un long décors avec le logiciel toon boom (mais celui ci ne peut enregistrer le tout) donc ensuite je découpe mon décors et le développeur s’occupera de le ré assembler dans le jeu, je pense que c'est plus simple comme ca... En tout cas pour moi

    Merci des conseils en tout cas !

  12. #12
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    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 361
    Points : 20 379
    Points
    20 379
    Par défaut
    Citation Envoyé par manasamoht Voir le message

    De mon côté, je dessine le décors et les différents backgrounds seulement en 2D, juste avec une tablette graphique, là dans la vidéo j'ai l'impression qu'ils utilisent de la programmation et de la 3D, mais je peux me tromper, ne connaissant rien à la programmation...
    non c'est bien de la 2d et ils utilisent un "éditeur de niveau" sacrément sophistiqué ( ils ont les moyens chez Ubi et merci à Moddib pour le lien )
    Tu peux voir que le démonstrateur de chez Ubi Soft peut faire des transformations en temps réel , il doit y avoir du traitement d'image sur des bitmaps derrière
    Ensuite ( peut-être que tu ne comprends pas l'anglo-américain), le démonstrateur parle de "layers" il fait pivoter l'espace de visualisation pour montrer les couches superposées pour faire les décors

    Citation Envoyé par manasamoht Voir le message
    Pour ma part, je dessine le niveau avec le plan 1 sur le lequel le héros va marcher, le plan 2 en arrière plan et un plan 3 encore plus éloigné... tout cela fait main... C'est pour quoi au départ dessiné uniquement un seul plan sans le découper été l'idéal, mais vu que cela est impossible, je vais faire plusieurs morceaux...

    oui c'est la meilleure façon de procéder.
    Il faudra programmer un éditeur de niveaux..
    de toute façon lorsqu'on programme un jeu vidéo un éditeur de niveaux est quasi obligatoire
    Citation Envoyé par manasamoht Voir le message
    Cependant j'ai vu pas mal de projets en cours sur le forum utilisant des background en long, je vais aller demander leur façon e procéder et voir si je ne peux pas m'améliorer... Merci encore pour la vidéo.
    ce n'est pas trop conseillé ; ça fait des grosses images en mémoire
    Il vaut mieux les découper en plusieurs quitte à les rassembler à l'écran.
    L'algorithme pour faire cela n'est pas trop compliqué

    Citation Envoyé par Kannagi Voir le message
    Je ne connais pas de logiciel qui le fait automatiquement , mais tu peux partitionner un BG imaginons de 80000 pixel de long,dans une fentre de 800x600 donc ça te fait 100 BG qu'il faudra afficher les un a la suite des autres ,n' importe que logiciel gimp ou photoshop le permet , tu peux afficher une grille pour mieux découper ton BG.
    c'est exactement comme cela qu'il faut procéder avec une fenêtre qui se "déplacera" sur une sorte d'espace virtuel

  13. #13
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Je viens de voir la vidéo, punaise !! C'est tout juste phénoménal ce qu'ils ont fait là Par contre si je regarde la vidéo de présentation sur la partie 2D de Unity 3D, je trouve qu'il y a des airs de déjà vu, ou bien tout le monde à la même idée ?!

    Par contre j'adore comment le présentateur au milieu est abasourdit je l'adore !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  14. #14
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    bonjour, je m'excuse de revenir a la charge, mais Mat.M, quel est l'algorithme qui te permettra justement de réalisé la découpe en plusieurs parties et les rassembler à l'écran ?

    Je dois bien avouer que nous séchons sur ce problème anodin...
    J'ai découpé mon décors en plusieurs parties (cependant elles sont inégales en hauteurs et largeurs, est-ce un problème ?) mais toujours dificil de les rassembler...

    Quelle est la meilleure définition à adopter aujourd'hui ? 180 est envisageable ? De plus dois-je découper les parties en morceaux identiques ou puis-je laisser les parties comme je les ai découpé ?

    Merci.

  15. #15
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    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 361
    Points : 20 379
    Points
    20 379
    Par défaut
    salut quel langage utilises-tu ?
    Est-ce Action Script ?
    Je dois bien avouer que nous séchons sur ce problème anodin...
    J'ai découpé mon décors en plusieurs parties (cependant elles sont inégales en hauteurs et largeurs, est-ce un problème ?) mais toujours dificil de les rassembler...
    Il est préférable de faire les graphismes en trouvant une sorte de dénominateur commun , un résolution commune par exemple 1024x768
    Ensuite si l'utilisateur affiche le jeu en 800*600 eh bien les plans seront rétrécis.
    Pour ce qui est de découper les plans alors il faut faire plusieurs bitmaps de 1024x768

    De plus dois-je découper les parties en morceaux identiques ou puis-je laisser les parties comme je les ai découpé ?
    si les morceaux ne sont pas identiques ça sera un peu plus compliqué de les rassembler à l'écran.
    Mettons que tu aies n plans de dimensions différentes, pour les assembler à l'écran
    il faut obtenir les dimensions de chaque plan
    gérer une sorte de "curseur" ou bien position de défilement
    chaque plan se positionne grâce à l'éditeur selon des coordonnées écrans différentes
    Si le premier plan vaut 1024*768 et le suivant 800*600 alors la position du deuxième sera à l'abscisse 1024...le troisième 1024+800 et ainsi de suite

    Maintenant c'est valable pour le fond ; dans un jeu à défilement on utilise la technique de calques et on les affiche selon un certain ordre ça s'appelle l'algorithme du peintre ;ainsi les objets les plus éloignés seront affichés en premier et ça fera une superposition de couches.

  16. #16
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Merci pour la précision Mat.M

    Je vais donc découper en parties égales, mais je souhaiterai un jeu HD, dois-je pour cela découper les parties en 1920*1080 ?
    Si je dépasse cette définition lors de la découpe, cela ralentira forcement le jeu ou les temps de chargements seront plus long ?

    Lorsque je vois les nouveaux jeux 2D en HD, je me dis que la découpe est forcement supérieur a du 800*600, je me trompe ?

    EDIT : Nous avons toruvé la solution, avec une découpe de 1920*1080 (comme la HD)
    Nous continuons sur notre lancé, merci de vos réponses...

  17. #17
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    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 361
    Points : 20 379
    Points
    20 379
    Par défaut
    salut désolé de répondre tardivement; le fait que ça soit en HD ne soit pas important sauf si la carte vidéo de l'utilisateur ne supporte pas cette résolution.
    Si tel est le cas alors il faudra faire un rétrécissement des images vers la résolution cible.
    Dans un jeu il est important de voir si l'utilisateur a une carte vidéo capable de supporter telle ou telle résolution

  18. #18
    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 : 179
    Points
    179
    Par défaut
    Bonjour,

    La 2d moderne fonctionne exactement comme la 3d, donc ça diffère de la 2d d'autrefois sur pas mal de points:

    - on remplace les tuiles par des polygones
    - tous les polygones de la map sont dans la mémoire vidéo (il y'a la place aujourd'hui on n'est plus sur la gameboy)
    - ça s'optimise en regroupant les polygones en objets plus gros pour réduire le nombre de drawcalls
    - l'algo du scrolling est remplacé par l'algo du culling (tu ranges tout dans des grosses cases et tu ne rends que les objets dans les cases visibles)

    Tu peux utiliser un logiciel 3d pour dessiner tout ça, il suffit de tout faire à plat.
    nous devons inventer la langue de feu pour crâmer la langue de bois

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/08/2014, 17h06
  2. Réponses: 12
    Dernier message: 22/01/2008, 09h06
  3. Réponses: 1
    Dernier message: 19/06/2007, 12h43
  4. Comment créer un menu popup style XP ?
    Par chaours dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/09/2003, 09h38

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