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 :

cache d'une partie de l'image


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Par défaut cache d'une partie de l'image
    bonjour,
    j'ai une scène où le fond reste fixe et le même à chaque frame, donc je souhaiterais savoir comment le dessiner une seule fois, et le garder en cache pour pouvoir le recoller les fois suivantes ? le parle bien de l'image rasterisée et pas utiliser quelquechose comme les display-list, de plus je n'ai pas besoin de récupérer le depth buffer avec car il s'agit vraiment que d'un fond.
    voilà merci pour vos éclairsissement

  2. #2
    Membre émérite

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2006
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 450
    Par défaut
    Ce thread devrait t'intéresser :

    http://www.developpez.net/forums/d59...enetre-opengl/

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Par défaut
    En fait ce que je cherche à faire est différent de ce thread, et ce à deux égards. D'une part je ne cherche pas à remplir le fond avec une texture sur un quad, mais bien d'avoir un fond dessiné en 3D avec opengl. D'autre part dans ce thread le fond sera redessiné à chaque nouvelle frame et non mise en cache, ça ne correspond donc pas à ce que je recherche à faire.

  4. #4
    Membre émérite

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2006
    Messages
    450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 450
    Par défaut
    Quelle est la différence ? Tu dessines ta scène 3D dans une texture que tu afficheras à chaque frame dans un quad... Ce n'est pas ce que tu veux faire ? Afficher une image "3D" en fond à chaque frame ?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Par défaut
    Je ne suis pas sur de comprendre, car si ma fenêtre a une dimension batarde genre 781 x 493 pixels, les textures en revanche doivent avoir des dimensions particulières ?
    Deplus les textures en étant appliquées sont soit légèrement floutées (si on est en linear) soit légèrement pixelisées (si on est en nearest), donc je n'aurais pas l'exacte réplique au pixel prêt ?
    N'y aurait-il pas une méthode plus clean ? Un genre de copier-coller plutôt que ce moyen détourné ?

  6. #6
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Par défaut
    Je suis tombé sur cette page, ça m'a l'air d'être ce que je recherche
    http://helios.univ-reims.fr/Labos/LE...enGL/td13.html

  7. #7
    Membre confirmé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 115
    Par défaut
    Il faut que tu fasses un glCopyTexImage2D() une fois que ton fond d'écran est rendu pour la première fois


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    unsigned int monId;
    glGenTextures(1, &monId);
    glColor3d(1.,1.,1.);
    glEnable(GL_TEXTURE_2D);
    glBindTexture(GL_TEXTURE_2D, monId);
    glPixelStorei (GL_UNPACK_ALIGNMENT, 1);
    glCopyTexImage2D(GL_TEXTURE_2D,0,GL_RGB,0,0, w, h,0);
    glTexParameteri( GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
    glTexParameteri( GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
    glDisable(GL_TEXTURE_2D);
    glReadPixels() suivi de glTexImage2D() devrait te permettre de faire cela aussi

Discussions similaires

  1. Histogramme d'une partie de l'image
    Par Lost in dans le forum Images
    Réponses: 3
    Dernier message: 16/06/2008, 12h59
  2. Image, récupérer une partie de l'image
    Par skud dans le forum C#
    Réponses: 4
    Dernier message: 06/06/2007, 15h04
  3. Réponses: 1
    Dernier message: 17/04/2007, 16h40
  4. Réponses: 3
    Dernier message: 31/10/2006, 12h20
  5. copier une partie de l'image
    Par zidenne dans le forum Langage
    Réponses: 6
    Dernier message: 03/02/2006, 12h40

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