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 :

affichage imprecis


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Par défaut affichage imprecis
    Bonjour.

    Je develloppe actuellement une appli avec openGL et visual c++, qui permet de charger un monde en 3D (format perso, modélisé avec 3DS) et de se deplacer dans ce monde avec une vue a la premiere personne (prise en compte de la hauteur suivant le sol et gestion des colisions)

    J'ai un probleme d'affichage: la 3d est imprecise. par exemple, cela se passe entre autre a l'endroit ou les batiments touchent le sol, selon la position de la camera, la coupure etre les deux faces n'est pas nette (au niveau de la modelisation, j'ai descendu les points du bas des faces des batiments en dessous du terrain) y'a t-il un moyen d'arranger ca ou faut-il que je change mon modele 3D pour que les faces du batiment s'arrettent pile au niveau du sol (ce qui je pense resoudrai le probleme)

    Un autre probleme d'affichage, ce coup ci au niveau des textures. Elles sont placquées sur les faces (normal...) mais semblent trembler(faiblement) quand je bouge la camera alors que je ne modifie pas les coordonnées de texture. Je n'ai pas réussi a trouver d'ou ca vient.

    Merci de votre coup de main.

    si vous avez besoin de precisions sur mon programme, demandez je vous montrerai.

  2. #2
    Membre expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut
    pour le 1er pb je sais pas sinon pour l autre est se que tu CLAMP ta texture sur le polygon?

  3. #3
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Par défaut
    non je ne CLAMP pas. lorsque je clamp, les textures ne sont plus appliquées correctement (et elle tremblent toujours...)

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 18
    Par défaut
    tu as appliqué du mipmapping ?

  5. #5
    Membre chevronné Avatar de charly
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 329
    Par défaut
    Pourle premier probleme , ca depent de ton model 3D uniquement , par contre , tu peux utilisé un algo pour l'affiner et le "scaler" afin de lui donner les bonnes dim

  6. #6
    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
    perso pour le premier probleme je pense que ca vient plus d'un conflit de zbuffer que d'autre chose... ton zbuffer est probablement en 16bit... essaye de le passer en 24bits voir 32 ...
    * 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

  7. #7
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Par défaut
    j'ai trouvé un moyen pour remedier au probleme mais cela en apporte un autre......

    je n'ai pas trouvé comment changer la profonduer du Z-buffer. Par contre, en mettant clip_near a 1 au lieu de 0.4 et clip_far a 1200 au lieu de 10000 tout s'affiche correctement (sauf que lorsque je m'approche trop des murs je peux voir a travers... il faut que j'augmente la distance minimale entre mur et camera et cela pose toujours un probleme dans les coins pour l'instant)

    par contre , cela ne corrige pas le probleme de textures. (et je n'utilise pas de mipmapping)

  8. #8
    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
    effectivement il est TRES deconseillé de mettre un near planen dessous de 1 (je sait pas pourquoi exactement mais ca pose des problemes...)
    * 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

  9. #9
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Par défaut
    aparemment, si j'ai bien compris, la precision du z-buffer est en raport avec cette formule : log2(clip_Far/clip_Near) donc quand clip_near est en dessous de 1 et tend vers 0 log2(clip_Far/clip_Near) va tendre vers l'infini ce qui entraine une precision moindre.
    http://www.opengl.org/resources/faq/technical/depthbuffer.htm

  10. #10
    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
    ok merci pour le liens il est vraiment bien, il explique biens tout les problemes qu'on peut rencontrer avec le zbuffer...
    * 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

  11. #11
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Par défaut
    y'a pas de quoi... sinon quelqu'un a une idée pour les textures ?

  12. #12
    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
    essaye de changer le filtrage et d'activer le filtrage anisotropique dans la config de ta carte graphique pour voir si ca resoud le probleme...
    * 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

  13. #13
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 37
    Par défaut
    avec le filtrage anysotropique a fond j'ai l'impression que y'a un peu de myeux mais c'est toujours pas ca

  14. #14
    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
    et le filtrage ? tu as essayé en trilineaire ? (la par contre il faut modifier dans le prog...)
    * 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

Discussions similaires

  1. Pb affichage avec un PaintBox (pour eviter scintillement)
    Par juan64 dans le forum C++Builder
    Réponses: 7
    Dernier message: 08/04/2004, 09h21
  2. [imprecis]Réaliser a^n avec seulement l'opérateur d'addition
    Par Amon dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 08/11/2002, 22h22
  3. Affichage de documents PDF
    Par Dajon dans le forum C++Builder
    Réponses: 5
    Dernier message: 10/10/2002, 11h36
  4. probléme d'affichage d'une fiche
    Par sb dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 09h43
  5. Affichage en passant par un buffer...
    Par Sirotilc dans le forum MFC
    Réponses: 5
    Dernier message: 27/05/2002, 21h00

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