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

XNA/Monogame Discussion :

[XNA4] Simuler le vent sur des sprites


Sujet :

XNA/Monogame

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 21
    Points : 17
    Points
    17
    Par défaut [XNA4] Simuler le vent sur des sprites
    Bonjour,

    Je suis actuellement sur un nouveau projet en 2D et j'aurai voulu un avis extérieur concernant la gestion d'un vent sur mes sprites.

    Au fond de mon jeu est superposé un ensemble d'éléments (herbes hautes, arbres, ...), et j'aimerai pouvoir les animer de manière vivante.

    J'ai imaginé deux solutions pour le moment:
    1) un mini moteur basé sur de l'aléatoire pour changer le sprite courant d'un objet, par exemple de l'herbe, et la faire aller d'un "point" à l'autre de son animation en fonction de nombres aléatoire, nombre calculé à chaque fin d'itération de l'animation. Super lourd à priori, autant en terme de calcul que de mémoire ...
    2) utiliser des shaders pour calculer les déformations dues au vent. J'ai déjà vu des exemple en 3D bluffant de réalisme et ultra performant, mais là mon soucis est la complexité que je n'arrive pas à mesurer

    Pour donner un ordre d'idée, le nombre d'éléments dynamiques devrait tourner autour des 1000 dans le pire des cas (en tout cas pour le moment)

    Quel est votre avis? avez vous d'autres idées?

    Cordialement

    Clem

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


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    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 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Bonjour,

    Pour un jeu 2D, vu de dessus, en tiles, je propose de créer des petits décalages pour les sprites, selon un z fictif. Chaque type de sprite aura donc un attribut z et le vent fera bouger plus ou moins vite les sprites selon leurs z. Le problème, c'est la cassure entre les tailles qui risquent de se créer.

    Sinon, on peut utiliser des spritesheets, comme pour les animations, mais par exemple, pour l'herbe, on changera le rectangle aléatoirement avec les rectangles adjacent du sprite. Plus concrètement, imaginé 3 sprites d'herbe alignés horizontalement. Vous afficher actuellement le sprite du milieu (deuxième sprite) et pour la frame suivante, vous choisissez aléatoirement, soit la sprite 1, soit la sprite 3.

    Pour les shader, cela peut être plus difficile, mais ce n'est pas une obligation Je me demande quel effet vous voulez faire.
    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.

  3. #3
    Membre régulier
    Homme Profil pro
    médical
    Inscrit en
    Septembre 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : médical

    Informations forums :
    Inscription : Septembre 2007
    Messages : 144
    Points : 71
    Points
    71
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Bonjour,

    Pour un jeu 2D, vu de dessus, en tiles, je propose de créer des petits décalages pour les sprites, selon un z fictif. Chaque type de sprite aura donc un attribut z et le vent fera bouger plus ou moins vite les sprites selon leurs z. Le problème, c'est la cassure entre les tailles qui risquent de se créer.
    je ne suis pas sûre que la taille change selon le Z, car un sprite est ni plus ni moins qu'un carré (2 triangles) rendu dans une projection orthogonal, donc quelque soit la profondeur Z, le sprite reste visuellement de la même taille non?

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


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    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 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Je ne parlais pas de changement de taille. J'imaginais un système similaire à du parallax, dans lequel selon un attribut 'z' le déplacement / positionnement du sprite change.
    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.

  5. #5
    Membre régulier
    Homme Profil pro
    médical
    Inscrit en
    Septembre 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : médical

    Informations forums :
    Inscription : Septembre 2007
    Messages : 144
    Points : 71
    Points
    71
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Je ne parlais pas de changement de taille. J'imaginais un système similaire à du parallax, dans lequel selon un attribut 'z' le déplacement / positionnement du sprite change.
    tu parles un peu de dessus dessous par rapport à un autre sprite?

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


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    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 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Oui, car je voyais l'herbe au plus loin, puis des arbres au dessus puis des nuages encore au dessus.

    Dans un des derniers Pokemon (sur NDS), il y a un effet de vent, cela pourra vous donner une idée.
    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 à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    Bonjour,

    Interessant que tu parles de Pokemon sur NDS, l'idée que je me fesait des graphismes que j'aimerai obtenir était à peu près celle des Pokemon sur GB (ou des RPG sur SNES), avec évedement des textures plus fines et quelques animations bonus (dont le vent) qui pourra être affecté par des effets (tornades, magie, ...).

    A un moment j'ai meme pensé utiliser un moteur physique genre PhysX pour gerer ca et d'autres choses (eau, particules, gravité,...).

    Concernant l'idée du z j'ai du mal à imaginer le résultat mais l'animation sera pas très fluide il me semble, non? L'idée était de calculer l'animation plutot que la stocker mais j'irai au meilleur compromis temps de dev/beauté.

    Merci en tout cas pour les idées

    Clem

Discussions similaires

  1. VB6 simuler un click sur des Champs cachés
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 09/10/2007, 15h06
  2. Réponses: 3
    Dernier message: 16/02/2007, 16h03
  3. Réponses: 3
    Dernier message: 07/02/2007, 18h01
  4. Historique des ventes sur 3 années
    Par boux2 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 19/07/2006, 10h18
  5. [2D] Gestion des sprites sur un moteur 2d
    Par drcd dans le forum Développement 2D, 3D et Jeux
    Réponses: 9
    Dernier message: 27/03/2006, 17h17

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