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 :

Implémentation transform feedback


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 15
    Par défaut Implémentation transform feedback
    Bonjour à tous !
    J'essaie d'implémenter un algo qui utilise le "Transform Feedback" mais je m'en sors pas. Je dois faire un truc à l'envers ou pas avec les bons paramètres et du coup impossible de récupérer des données cohérentes...
    Help !

    Voila le code d'initialisation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    // Data structure to store Eye space position and Screen Space position
    struct ES_AND_SS {
    float x,y,z;
    int u,v;
    };
     
    // Buffer to store data
    ES_AND_SS* tabData;
     
    // Varying names to be recorded from vertex shader output
    static const char* varyingNames[] = {
    "ESPosition",
    "ssCoord"
    };
     
    // Initializing data buffer
    glTransformFeedbackVaryings(myProgramID,2,varyingNames,GL_INTERLEAVED_ATTRIBS);
     
    glGenBuffers(1,&bufferID);
    size = 1000;
     
    // Allocate space
    tabData = new ES_AND_SS[size];
    glBufferData(GL_TRANSFORM_FEEDBACK_BUFFER,size*sizeof(ES_AND_SS), NULL, GL_DYNAMIC_READ);
    Au rendu:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    myProgram->activate();
    glBindBuffer(GL_TRANSFORM_FEEDBACK_BUFFER,bufferID);
    glBeginTransformFeedback(GL_POINTS);
     
    //... draw some vertices ...
     
    myProgram->deactivate();
    glEndTransformFeedback();
     
    // Reading back data
    glGetBufferSubData(GL_TRANSFORM_FEEDBACK_BUFFER, 0, size*sizeof(ES_AND_SS), tabData);
     
    // unbind
    glBindBuffer(GL_TRANSFORM_FEEDBACK_BUFFER,0);
    Mais quand je vais lire dans tabData j'ai que des 0 ou des valeurs bidons approchant 0.
    Merci pour voter aide !

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 15
    Par défaut
    Bon j'ai une partie de la réponse: NE PAS OUBLIER DE FAIRE UN BIND AVANT D'APPELER glBufferData(...)

    Donc maintenant le glGetBufferSubData(..) ne lève plus d'erreur GL mais par contre je continue à ne lire que des 0.0 dans mon buffer

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 15
    Par défaut
    Ayé j'ai la réponse, je la poste ici pour que d'autres malheureux ne galèrent pas comme moi à rester bloqué sur ce genre de conneries.

    La réponse est: ne pas utiliser GL_INTERLEAVED_ATTRIBS qui ne marchent pas (un bug de driver ?) mais GL_SEPARATE_ATTRIBS à la place.

Discussions similaires

  1. Réponses: 0
    Dernier message: 07/07/2014, 17h52
  2. Implémentation de la transformée de Hough pour les objets 3D
    Par Iori Yagami dans le forum Traitement d'images
    Réponses: 12
    Dernier message: 06/10/2012, 16h43
  3. comment utiliser le transformée de Hough pour implémenter des descripteurs
    Par fraisa1985 dans le forum Traitement d'images
    Réponses: 1
    Dernier message: 26/04/2010, 10h49
  4. FFT(Fast Fourier Transform)
    Par IngBen dans le forum Traitement du signal
    Réponses: 6
    Dernier message: 23/05/2002, 16h35

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