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 :

Normal et Index Buffer


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 58
    Par défaut Normal et Index Buffer
    Bonjour,

    Je rencontre ces temps ci un problème sans doute bête mais qui je dois l'avouer me rend fou.

    J'ai défini un VB et un IB, donc pour une box j'aurai 8 positions et dans mon IB 36 index, ici pas de problème pour afficher une box juste avec les positions et créer les buffers.

    Le problème se pose quand j'essaie de faire une FVF avec des normales, car sur une box on a 36 normales (per vertex normal), 12 normales (per triangle normal) mais quand on va créer notre Vertex Buffer quel taille va t ont définir ? :/ car une normale est associé à une position normalement, seulement avec les IB nous avons que 8 positions et 12 normales (ou 36) ! il ya donc un trouve.

    Enfin vous l'aurez sans doute compris, je suis un peu perdu là ...

    Merci de votre aide.

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Un vertex n'est pas seulement une position, c'est l'ensemble de ses caractéristiques : position, normale, couleur, coordonnées de texture, ... Donc si là-dedans tu as n'importe quel attribut qui est différent entre deux sommets, même s'ils ont la même position, ce sont bien deux sommets différents. Donc il te faut plus que 8 sommets dans ton VB.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 58
    Par défaut
    En faites le problème n'est pas ici, mais je crois que je viens de comprendre :/, les Index Buffer c'est bien mais pas tout le temps, des fois on a besoin de dupliqué des vertex, je m'explique:

    On a un cube, on a un vertex à la meme position sur 3 faces différentes.

    Avec IB: je change la couleur du vertex, ca change la couleur de 3faces
    Sans IB, donc vertex dupliqué en 3fois: je change la couleur du vertex de la face que je veux.

    Le problème est le meme pour les normales, dans mon cas faudrait que je fasse la moyenne des 3 normales de chaques vertex :/ donc autant ne pas utiliser les IB, dupliqué les vertex, et attribuer des normales indépendante à chaque face meme si les vertex sont dupliqué.

    C'est sans doute une perte de perf mais un gain de flexibilité.

    S'il existe d'autre moyen que les IB pour DX, je suis ouvert (hmm attention !) à toute proposition.

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    S'il existe d'autre moyen que les IB pour DX, je suis ouvert (hmm attention !) à toute proposition.
    Pas vraiment, non

  5. #5
    Membre Expert

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Par défaut
    Citation Envoyé par countag Voir le message
    Le problème est le meme pour les normales, dans mon cas faudrait que je fasse la moyenne des 3 normales de chaques vertex :/ donc autant ne pas utiliser les IB, dupliqué les vertex, et attribuer des normales indépendante à chaque face meme si les vertex sont dupliqué.
    Pas vraiment. si tu fais la moyenne des normales ce n'est plus le même modèle tout simplement (les normales font partie intégrante du modèle, les indiquer par face ou par vertex montre une "intention" de la part du programmeur/artiste).

    De toute façon c'est un faux problème. Un cube c'est un cas particulier et qui n'est pas forcément représentatif des modèles qui eux auront plusieurs milliers de sommets.

    LeGreg

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

  6. #6
    Membre très actif
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 434
    Par défaut Couleurs de vertices et materiaux ?
    EDIT: desolé je voulais créer un topic...

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

Discussions similaires

  1. [OpenGL 4.x] Vertex buffer et Index buffer Problème de rendu
    Par Ninored dans le forum OpenGL
    Réponses: 3
    Dernier message: 30/08/2014, 01h46
  2. Index Buffer avec offset
    Par spiner900 dans le forum OpenGL
    Réponses: 4
    Dernier message: 18/03/2014, 00h21
  3. [VBO]Pb avec un Index Buffer
    Par sisoft93 dans le forum OpenGL
    Réponses: 0
    Dernier message: 06/02/2008, 05h23
  4. question sur les vertex buffer et index buffer
    Par airseb dans le forum DirectX
    Réponses: 9
    Dernier message: 25/08/2003, 02h38

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