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

DirectX Discussion :

[C#]plusieurs instances de meshes dans un seul vertexbuffer


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 134
    Par défaut [C#]plusieurs instances de meshes dans un seul vertexbuffer
    Bonjour,
    pour mon projet de jeu vidéo, j'ai eu une idée que je trouvais intéressante. En fait, elle ne vient pas de moi, mais d'un jeu, Final Fantasy XII. En effet, il y est utilisé une technique intéressante : mettre toutes les instances d'un meshe (de l'herbe par exemple) dans un seul vertexbuffer pour en optimiser l'affichage. Du coup on peut procéder à cette technique à autant d'objets différents (plusieurs types de végétations par exemple). Au passage, cette technique existe très certainement ailleurs, mais elle m'a interpelé dans ce jeu particulièrement.

    Je suis donc en train d'essayer cette technique, qu'en pensez-vous ? est-elle vraiment utile ? car je me défends d'utiliser une boucle pour afficher mes objets (statiques de succroît ou animés par vertex shaders).

  2. #2
    Membre expérimenté Avatar de ShadowTzu
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Par défaut
    C’est une bonne technique, à utiliser pour des particules, de l'herbes, et tout mesh qui ont la même textures par contre pour les mesh en mouvement je ne sais pas si le temps de reconstruire le vb est assez rapide, ça dépend de la complexité du mesh et de combien tu veux en mettre.

  3. #3
    Membre éclairé
    Avatar de funkydata
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    515
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 515
    Par défaut
    Il existe d'autres méthodes d'optimisation des transformations qui peuvent de permettre de "sauter" les transformations inutiles dans ta scène (notamment les objets statiques).
    Je n'ai personnellement jamais testé cette technique mais de part mon expérience tu ne vas pas gagner grand chose à l'employer (quoique cela dépend beaucoup de ton application)... Je pense qu'il vaut mieux se concentrer sur la gestion de la scène et les shaders. Si tu veux vraiment optimiser ce type de meshs (herbes, particules...) conçoit ton code de manière a rester (autant que possible) au niveau du GPU. Là tu gagneras pas mal de FPS et que tu es 100 meshs dans 1 vertexbuffer ou l'inverse n'aura pas d'impact sur les performances... et ce sera plus beaucoup souple a gérer
    Ceci dit seul les tests que tu réaliseras te permettront de réellement te faire une idée du gain de performances en employant cette technique

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 134
    Par défaut
    Merci pour vos réponses. En effet ce que je compte faire c'est précharger tout dans le vertexbuffer pour que seule la carte graphique puisse y toucher après (animation par vertex shader) car avec cette méthode je n'aurai pas 100 ou 1000 objets, mais bien un seul. Et comme vous le dites, seuls les tests permettrons de faire des comparaisons niveau performances.

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

Discussions similaires

  1. [E-03]Compiler plusieurs fichiers xls (fermés) dans un seul
    Par Geprocor dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/01/2018, 16h52
  2. Réponses: 1
    Dernier message: 13/03/2010, 15h02
  3. [MooTools] plusieurs carte google map dans une seule page
    Par vladimire dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 03/03/2010, 22h15
  4. Plusieurs requêtes de création dans un seul composant ado => bug
    Par SkYsO dans le forum Bases de données
    Réponses: 9
    Dernier message: 25/04/2008, 15h21
  5. Réponses: 6
    Dernier message: 18/05/2006, 09h29

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