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 :

Uniform Buffer + Vertex Buffer erreur


Sujet :

OpenGL

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Uniform Buffer + Vertex Buffer erreur
    Bonjour à tous et à toutes, et merci de m'accorder un peu de votre temps

    J'essaie d'utiliser les Uniform Buffers sous OpenGL. Je dispose déjà d'une classe VertexBuffer dont le but est de charger VBO/IBO/VAO à partir de tableaux contenant les attributs du VB. Tout fonctionne très bien. Idem pour le programme. Le Vertex Buffer est rendu avec un programme simple de test, contenant un uniform block que je veux lié à un Uniform Buffer.

    Voici mon problème :
    > Tout fonctionne si je génère d'ABORD le programme, l'Uniform Buffer, et bind l'uniform block du program à l'Uniform Buffer
    PUIS génère le Vertex Buffer. Au rendu, toute modification de l'Uniform Buffer modifie bien l'uniform block du programme, comme on peut s'y attendre
    > Mais si je génère d'ABORD le VertexBuffer, PUIS le programme et l'Uniform Buffer (et son binding à l'uniform block du programme), alors plus rien ne s'affiche au rendu...
    > Comme si l'ordre dans lequel les différents types de buffer étaient crées importaient...

    Debug : j'ai vérifié que tous les buffers (uniform, vertex, etc...) étaient bien crées et avec les bonnes valeurs sous gDEbugger et aussi j'ai watché sous Visual les différentes valeurs des objets GL crées : tous sont corrects (point de binding, buffer objetcs, program objects...) et aucune fonction de GL ne retourne d'erreur (testé avec (glGetError()) )

    Auriez-vous des idées ?

    Vous remerciant par avance,

    Mathieu

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    J'ai finalement trouvé la réponse (et bien sûr c'était... stupide :-p)

    Dans ma classe VertexBuffer, je bindais le VAO avec glBindBuffer(GL_ARRAY_BUFFER, VAO) au lieu du VBO, et du coup comme le VAO était = au UBO (uniform buffer object), alors il y avait erreur...

    Voilà, simple faute de lettre ;-)

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

Discussions similaires

  1. pb Affichage Vertex buffer
    Par mushishi dans le forum DirectX
    Réponses: 11
    Dernier message: 28/03/2006, 03h07
  2. [Debutant] Affichage du contenu d'un vertex buffer
    Par Edouard Kaiser dans le forum DirectX
    Réponses: 12
    Dernier message: 20/12/2005, 10h26
  3. Vertex buffer et géométrie complexe
    Par Omeyocan dans le forum DirectX
    Réponses: 13
    Dernier message: 14/12/2005, 11h28
  4. Probleme avec le vertex buffer
    Par nicoo dans le forum DirectX
    Réponses: 12
    Dernier message: 19/10/2004, 21h45
  5. 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