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

OpenGL Discussion :

Calcul de la normale en chaque point


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut Calcul de la normale en chaque point
    Bonjour,

    j'ai réussi à générér un terrain en 3D mais l'affichage n'est pas beau car il manque le calcul des normales.

    Est-ce que vous pourriez s'il vous plait m'indiquer comment on calcule la normale en chaque point.
    Si OpenGL, le fait à notre place, quelle est la fonction à utiliser

    Merci

  2. #2
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Par défaut
    non, OpenGL ne le fait pas à ta place.
    pour cela, il suffit de calculer la normale de chaque face, et ensuite d'additionner cette normale à la normale de chaque vertex de la face puis de normaliser le tout... bref, dit comme ça c'est incompréhensible... rien ne vaut un petit algo :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    pour chaque face du terrain
        calculer sa normale
        pour chaque vertex de la face
            additionner la normale de la face à celle du vertex
        fin pour
    fin pour
    pour chaque vertex du terrain
        normaliser la normale
    fin pour
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 132
    Par défaut
    et pour calculer la normale à un point seulement ?

  4. #4
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 125
    Par défaut
    Comme l'a dit bafman, il faut calculer les normales des faces contenant le point puis les additionner et normaliser la somme.
    Seulement, on a beacoup plus facilement accès aux points d'une face donnée qu'aux faces contenant un point donné, d'où l'algorithme de bafman...

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 132
    Par défaut
    OK, merci, j'avais pas bien compris, nuit blanche inside

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

Discussions similaires

  1. Calculer le vecteur normal a un plan formé par trois points.
    Par parp1 dans le forum Mathématiques
    Réponses: 12
    Dernier message: 11/03/2013, 17h57
  2. calcul de pixels en fonction de points de repere
    Par Ange_blond dans le forum Traitement d'images
    Réponses: 22
    Dernier message: 18/04/2008, 11h37
  3. Calcul de l'angle entre trois points en fonction du sens
    Par NeraOne dans le forum Mathématiques
    Réponses: 4
    Dernier message: 10/07/2007, 17h27
  4. Calculer la normal pour chaque vertex
    Par DestinyWar45 dans le forum OpenGL
    Réponses: 13
    Dernier message: 11/12/2006, 08h07
  5. Réponses: 4
    Dernier message: 23/10/2006, 16h02

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