#0 

17-05-2010 13:26:09

Ilovechocolat
Abonné
Date d'inscription: 07-10-2009
Messages: 125

Bonjours a tous !

Je viens récemment de faire la découverte d'un truc absolument génialissime, les filtre de convolution .
Pour la théorie j'ai appris ici : http://www.siteduzero.com/tutoriel-3-80 … ution.html
Donc il faudrait que je fasse ça grâce aux shader (parceque sinon c'est plutôt lourd), j'ai déjà le Quad de ma vision en 3D donc pour ça c'est bon mais le problème c'est que je doit récupérer les pixel autour de celui qui est sélectionné par le fragShader, mais comment faire ?

Hors ligne


#1 

20-05-2010 18:03:30

firnafin
Abonné
Date d'inscription: 31-03-2007
Messages: 150

L'idée est de faire un render to texture (cf les  methodes irr::video::driver::addRenderTargetTexture , irr::video::driver::setRenderTarget)puis un deuxieme rendu avec le quad seulement , quad texturé avec le rendu de la scene  avec un shader "filtre".
Dans le fragment shader tu récupères la coordonnée du pixel en cours de traitement et la valeur des pixels voisins de la texture puis tu y fais tout les maths voulues.C'est si je ne m'abuses le "postprocess" .Tu peux même avec cette methode ,faire des effets de distortions ( chaleur , verre irrégulier ... ),de flou type DOF = depth of field (en gros une mixage du type gaussien pondérée par le zbuffer = plus on est loin plus le flou est fort ) , HDR .... en gros la majoritée des jolies petits effets present des les jeux depuis maintenant quelques années

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
883 membres
1429 sujets
11121 messages
Dernier membre inscrit: Saidov17
131 invités en ligne
Aucun membre connecté
RSS Feed