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 :

flouer une texture


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2007
    Messages : 13
    Par défaut flouer une texture
    Bonjour à tous.

    J'ai fait un rendu sur texture (FBO) et j'aimerais flouer tous les contours des polygones qui sont sur ma texture. Donc il faudrait que j'applique un flou gaussien, je croit.

    J'ai vu que l'ont pouvait afficher la texture plusieurs fois avec un petit décalage et du blending pour avoir un effet de flou mais :
    C'est bof bof comme résultat
    Je perd pas mal d'image par seconde quand j'affiche 4 fois la texture ou plus

    N'y a t-il pas une solution qui donne de meilleurs résultats et qui est plus performant ? A base de GLSL ? Si oui comment faire ? Avez-vous des tuto ?

    Merci

  2. #2
    Yno
    Yno est déconnecté
    Membre éprouvé Avatar de Yno
    Inscrit en
    Novembre 2005
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 138
    Par défaut
    Salut,

    Présentation du filtre gaussien avec shaders ici :
    http://ozone3d.net/tutorials/image_f..._p2.php#part_2

    Fais-le en plusieurs passes, oui, mais penses à redimensionner ta texture pour :

    - gagner en performances ;
    - obtenir un effet de flou plus prononcé.

    Par exemple, soit deux FBOs, A et B, avec respectivement les résolutions suivantes : 512*512, 256*256, tu peux faire ceci :

    - activer le shader de filtre gaussien ;
    - rendre la scène sur A ;
    - rendre A sur B ;
    - rendre B sur A.

    Au final, A donne quelque chose de pas trop mal. Après il faudra régler le nombre de passes, les résolutions, les paramètes dans ton shader, etc...

    Attention : l'utilisation du filtre gaussien sur de "grosses" résolutions de texture (comme 1024*1024) provoque des pertes de performance assez conséquentes.

    Je te conseille de prendre des résolutions puissances de 2 (2^n) pour tes FBOs, afin de gagner encore en performance.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2007
    Messages : 13
    Par défaut
    Merci, ça fonctionne trop bien

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

Discussions similaires

  1. Color key d'une texture
    Par Freakazoid dans le forum DirectX
    Réponses: 9
    Dernier message: 07/07/2004, 16h48
  2. comment modifier une texture?
    Par tibyann dans le forum DirectX
    Réponses: 6
    Dernier message: 16/06/2004, 15h27
  3. Charger 16x16 sur une texture 256x256
    Par Johngame dans le forum DirectX
    Réponses: 4
    Dernier message: 06/03/2004, 17h16
  4. Chargement d'une texture a partir de la mémoire
    Par logramme dans le forum DirectX
    Réponses: 6
    Dernier message: 27/01/2003, 14h57
  5. Changer l'image d'une texture
    Par alltech dans le forum DirectX
    Réponses: 5
    Dernier message: 21/08/2002, 01h31

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