-
Post Effect GLSL
Hello, je viens vous demander quelques conseils concernant les post effect réalisés à base de shaders GLSL.
J'ai lu quelques tutos et appris les bases du langage glsl. J'ai pu réaliser un premier test sur un jeu que je développe.
Mon problème est que je souhaite réaliser un effet de glow sur certains éléments de mon jeu. Par exemple les tirs de lasers.
Pour réaliser un bloom (ou hdr) en gros la méthode consiste à récupérer l'image final contenu dans le frame buffer et d'appliquer un filtre brightpass puis d'appliquer un filtre gaussien plusieurs fois. on mix le tout et on applique à l'image final par superposition et on affiche.
Si je fais cela je ne peux pas sélectionner les éléments un à un. Au mieux on peux appliquer un tel effet avant d'afficher le HUD par exemple.
Pour ne sélectionner que les éléments qui doivent avoir un glow je peux me servir du stencil buffer. Mais là je vois pas trop comment on fait.
Ce serait le remplir de 1 au moment où j'affiche les éléments qui m'intéresse.
Mais après comment je fais pour m'en servir? Comment je réalise le flou sur des lines (et non des textures)?
Merci
-
Si tu veux récupérer uniquement les objets que tu souhaites dessiner, tu utilises un FBO lors de ton rendu que tu récupères dans une texture. Tu fais ça uniquement quand tu vas dessiner tes objets, et ta texture ne contiendra que ces objets.
Après pour le glow, il existe un excellent cours dans la section algorithme de Developpez je te donne le lien:
http://humbert-florent.developpez.co.../introduction/
J'espère que ça pourra t'aider!