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 :

Couleur non uniforme


Sujet :

OpenGL

Vue hybride

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

    Informations forums :
    Inscription : Février 2005
    Messages : 61
    Par défaut Couleur non uniforme
    Salut,
    Je comprend pas trop d'où vient mon problème :
    j'affiche des objets avec OpenGL, a priori je n'ai activé aucune lumière, ...
    et quand je fais glColor3f(0.5, 0.5, 0.5) ,que j'affiche mes objets, puis que je lis les pixels affichés avec ReadPixels, j'ai des pixels à 123 et des pixels à 132 (en niveau de gris)
    J'ai essayé avec glColor3ub(128, 128, 128), pareil j'ai parfois des pixels un peu plus élevés, parfois moins. A l'oeil c'est invisible, mais comme je me sert de la couleur comme information par la suite, c'est assez génant. Est ce que c'est OpenGL qui fait ça, ou est ce que je fais peut-être quelque chose mal quelque part ?

  2. #2
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 580
    Par défaut
    oui c'est opengl qui fait ça et c'est tout à fait normal

    déjà tu passes une couleur en float et tu récupères une couleur en byte
    tu ne pense pas qu'il y a un problème ?

    ensuite, tu ne peux pas être certain que ce que tu auras en sortie sera 100% identique à ce que tu as codé
    plus encore si tu es en gouraud shading
    tu peux toujours tester en modèle flat pour voir mais à mon avis si tu veux faire ce genre de test tu vas devoir faire le choix entre :
    - prendre un marge de différence
    - ne pas utiliser opengl
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  3. #3
    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
    Il n'y a aucune raison d'avoir des différences, si tous les états sont bien parametrés et si les formats de pixel mis en jeu sont adéquats.

    Essaye d'écrire un programme minimum complet qui reproduise le problème, ça nous permettra de mieux détecter ce qu'il manque ou ce qu'il y a en trop.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 61
    Par défaut
    ok je vais me prendre des marges alors, ca ajoute un peu de temps de calcul
    Merci

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 61
    Par défaut
    D'accord je vais essayer de faire un prog simple et de voir si j'obtiens les memes problèmes. A priori j'ai gardé les états par défaut d'opengl, j'ai rien activé, j'ai fait un rendu flat c'est tout.

  6. #6
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 580
    Par défaut
    par défaut c'est le modèle de gouraud qui est actif
    tu as bien initialisé le modèle flat ?
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 61
    Par défaut
    Oui j'ai bien initialisé le modèle flat. Mais même quand je fais un simple glClear, avec comme glClearColor(0.5, 0.5, 0.5) je n'obtient pas des points tous de la même couleur. J'ai une espèce de damier. C'est peut être ma façon de lire les pixels qui est fausse. Pourtant j'utilise glReadPixels(0, 0, window_width, window_height, GL_RGB, GL_UNSIGNED_BYTE, image).

Discussions similaires

  1. dérivée d'un signal échantillonné non uniforme
    Par Kcyril dans le forum MATLAB
    Réponses: 1
    Dernier message: 21/03/2007, 14h39
  2. Couleur non prise en compte
    Par cell dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 22/07/2006, 14h44
  3. Réponses: 3
    Dernier message: 03/03/2006, 11h40
  4. Couleur non prise en compte en exécution
    Par BECHE dans le forum Langage
    Réponses: 2
    Dernier message: 22/12/2005, 18h14
  5. Couleurs non standart (donc pas clX)
    Par Shabata dans le forum Langage
    Réponses: 8
    Dernier message: 20/06/2003, 07h51

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