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 :

Render to texture???


Sujet :

OpenGL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 118
    Points : 118
    Points
    118
    Par défaut Render to texture???
    Bonjour tout le monde,

    J'aimerai tout simplement savoir comment copier le buffer d'image dans un tableau(en mémoire ram) pour que les couleur rgb soit dans les couleurs de la texture et que le z buffer soit dans la composante alpha.

    Je sais comment sortir les couleur avec glCopyTexSubImage(...). J'ai lu aussis des doc sur les pBuffer et sa m'a lair plutot birn mais rien ne dit si le z-buffer est copier en composante alpha(aucune allusion).

    Sinon avez-vous la commande pour copier seulement le z-buffer dans un tableau en mémoire ram?

    Si quelqu'un a de l'expérience dans le domaine qu'il m'en fasse par s'il le souhaite sa m'intéresse grandement .

    MERCI

    PS : en récupérent le buffer de couleur, j'ai juste mit en place un algorithme de Blur de mouvement.
    JC est bien notre dieu...(non non pas jesus christ mais John Carmack!!!)

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 22
    Points : 26
    Points
    26
    Par défaut
    Tu ne risque pas d'avoir ton Z-buffer comme la composante alpha de ton image. Tout simplement parce que dans le pire des cas, ton Z-Buffer est en 16 bit et que la composante alpha d'une image est généralement en 8 bit.

    [edit]
    Bon alors après quelques recherches, essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    // Pour un buffer en 640x480 (z-buffer 32 bits)
    GLfloat depthBuffer[640*480];
    glReadPixels(0, 0, 640, 480, GL_DEPTH_COMPONENT, GL_FLOAT, depthBuffer);
    Tu devrais récuperer le Z-buffer dans "depthBuffer".
    [/edit]

    Bonne chance.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 118
    Points : 118
    Points
    118
    Par défaut
    Tu ne risque pas d'avoir ton Z-buffer comme la composante alpha de ton image. Tout simplement parce que dans le pire des cas, ton Z-Buffer est en 16 bit et que la composante alpha d'une image est généralement en 8 bit.
    C pas bete comme réflexion sa j'y avait pas pensé

    Ok je vais essayer sa. Et si quelqu'un d'autre a un avis.(le mien c que pBuffer est plus rapide mais je vais tout tester.....)

    Par contre j'ai toujour vu que glCopyTexSubImage était plus rapide car optimisé pour la copie de composante.
    JC est bien notre dieu...(non non pas jesus christ mais John Carmack!!!)

Discussions similaires

  1. Render to Texture / couche alpha
    Par julien_v3ga dans le forum OpenGL
    Réponses: 8
    Dernier message: 15/11/2006, 10h10
  2. [DX9] Render To Texture + ZBuffer
    Par funkydata dans le forum DirectX
    Réponses: 7
    Dernier message: 19/08/2006, 11h45
  3. [C#][DX9] Render to texture
    Par funkydata dans le forum DirectX
    Réponses: 12
    Dernier message: 23/06/2006, 19h11
  4. render to texture
    Par damienlann dans le forum OpenGL
    Réponses: 46
    Dernier message: 22/06/2006, 16h44
  5. Render to texture
    Par primuus dans le forum DirectX
    Réponses: 1
    Dernier message: 19/04/2006, 03h38

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