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 :

Explication bump mapping


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut Explication bump mapping
    Salut,
    je debute en opengl et je n'interesse au bump-mapping. J'ai fait quelques recherches mais aucun site ne propose une explication digne de ce nom.
    J'ai compris qu'il s'agit de modifier la normale en fonction de l'image de la texture en niveau de gris (pour faire resortir les effets liés aux materiaux), mais COMMENT FAIT-ON CELA ? Qu'elles sont les demarches à suivre.
    Est-on obligé d'ajouter des extensions pour obtenir l'effet tant convoité?
    Je suis également preneur de tous tuto suffisement detaillé.
    A votre bon coeur m'sieur dame.
    ps: je bosse sous delphi...

  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
    Tu as commencé par la FAQ ?
    Qu'est-ce que le bump mapping ?

    Pour ce qui est du coding en OpenGL, il doit y avoir des tas de samples dispos sur le net ; à commencer par NeHe j'imagine.

  3. #3
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut
    Citation Envoyé par Laurent Gomila
    Tu as commencé par la FAQ ?
    Qu'est-ce que le bump mapping ?
    oui j'ai commencé par la faq et aussi par le site proposé dans la faq (trés interessant... tout s'est eclairé d'un coup).
    Citation Envoyé par Laurent Gomila
    Pour ce qui est du coding en OpenGL, il doit y avoir des tas de samples dispos sur le net ; à commencer par NeHe j'imagine.
    ah... nehe... je sais pas ce que vous lui trouver...moi je ne comprend rien de ce qu'il fait.
    pour ceux qui veulent du nehe sur le sujet:
    http://nehe.gamedev.net/data/lessons....asp?lesson=22
    http://nehe.gamedev.net/data/article...asp?article=20

  4. #4
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut
    je vais tenter de clarifier les choses:
    Je sais qu'il faut faire une bump-map (ca si j'ai bien compris c'est ma texture en niveau de gris) mais je ne sais pas comment l'utiliser aprés.
    Ensuite, je ne sait pas si je suis obligé d'utiliser une normale-map (si j'ai bien compris c'est une image bizarre parce que nos yeux ne sont pas fait pour regarder des vecteurs . RVB represente X,Y,Z des vecteurs en chaque points...).
    donc dans l'ordre et pour commencer:
    -chargement de ma texture.
    -chargement de ma bump-map comme une texture.
    (a partir de là je suis largé alors je ne sais pas si ce que j'ecris et correct ... et dans l'ordre)
    -transformation de ma bump-map pour obtenir
    les informations détaillant le relief ?...
    -eclairer ?... (visiblement c'est grace au jeux d'éclairage que l'on obtient l'effet voulu)

  5. #5
    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
    en fait il existe plein de techniques pour faire du bump mapping.
    par exemple, on peut fait de l'emboss bump mapping si on veut une technique lente pas belle et qui pompe des ressources

    sinon, la technique generalement utilisée est le DOT3 bump mapping
    en gros ca consiste a avoir une normal map (pas besoin de bump map à l'execution, il existe pleins de petits programmes sur le net qui permettent de generer une normal map à partir d'une bump map (google => normal mapper))
    une fois que tu a ta normal map, il faut calculer les tengentes et binormals de chaques vertex de ton model.
    à l'execution, pour chaque vertex, tu projete la position de la lumiere dans l'espace local du vertex (TBN), et apres, tu utilise l'extention DOT3 ou un fragment program pour calculer ton bump mapping...
    * 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

  6. #6
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut
    ok... je suis obligé de passer par la dot quoi (pour obtenir un truc credible)
    dans la faq on peut trouvé ceci:
    http://www.delphi3d.net/dot/
    parlent on bien de la meme chose?

    La normale-map c'est bien une image dont les couleurs RVB en chaque points defini les coordonées de mes vecteurs?
    Pour obtenir une normale-map il faut une bump-map, mais lors de l'execution je n'en ai plus besoin. (si j'ai bien compris)
    une fois que tu a ta normal map, il faut calculer les tangentes et binormals de chaques vertex de ton model.
    Je vais obtenir deux tableaux?
    et apres, tu utilise l'extention DOT3 ou un fragment program pour calculer ton bump mapping
    Tous ce qu'on a fait avant c'était pas le calcul du bump-mapping?

  7. #7
    Membre Expert
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Par défaut
    Moi j'aime bien NeHe. Y'a plein de code commenté sur tout openGL dans plein de langages. Ca serait dommage de s'en passer

    La leçon 22 a l'air très bien. Elle donne un effet de bump sans normal map et sans faire de calcul sur chaque fragment, juste avec du multi texturing. Comme le dit l'auteur c'est un hack, mais l'effet est là.

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

Discussions similaires

  1. Raytracing et bump mapping
    Par ydethe dans le forum Moteurs 3D
    Réponses: 5
    Dernier message: 22/06/2007, 13h03
  2. Réponses: 4
    Dernier message: 02/03/2006, 20h40
  3. Réponses: 22
    Dernier message: 28/07/2005, 21h37
  4. Comment faire du bump mapping
    Par CladStrife dans le forum DirectX
    Réponses: 7
    Dernier message: 01/01/2004, 05h07
  5. Bump mapping
    Par Francky033 dans le forum DirectX
    Réponses: 7
    Dernier message: 22/11/2003, 18h35

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