Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// partage de liens //// une carte des membres//// (apéros) codelab


#1 2016-10-05 11:02:39 Une question sur un shader.

Pertuit
membre
Date d'inscription: 2011-11-21
Messages: 52

Une question sur un shader.



Bonjour,
Je me casse un peu les dents sur un problème de shader. Je préfère ouvrir cette nouvelle discussion ici puisque c'est un programme en Pure Data et il y a des apparemment des pros des shaders si l'on en juge par les nombreuses ressources épinglées ici par nono...
Mon programme de shader est simple (ci-dessous) : une boule rouge se déplace avec la souris. Je voudrais juste faire en sorte que le mouvement fasse une trainée rémanente (qu'il reste une trace du mouvement qui s'estompe peu à peu). J'ai cru comprendre que l'OpenGL était sans mémoire, mais je me doute qu'il devrait y avoir une possibilité pour garder une trace du mouvement sur la fenêtre. Une autre solution serait, bien sûr, d'envoyer de multiples positions à partir de Pure Data, mais cela retirerait le bénéfice de la rapidité de calcul du shader.
Auriez-vous une solution à cette question ?
RP

http://codelab.fr/up/shader.png

Dernière modification par Pertuit (2016-10-05 11:05:53)

Hors ligne

 

#2 2016-10-06 15:14:15 Re : Une question sur un shader.

nononononono
membre
Lieu: Toulouse
Date d'inscription: 2011-02-04
Messages: 614

Re: Une question sur un shader.



hello,
pour ce faire, il te faut travailler avec avec l'image d'avant, que tu peux récupérer avec un gemframebuffer, et que tu renvoie en sampler2D ou sampler2DRect (en texture, quoi!), et puis ensuite, ben tu en fait ce que tu veux!

Hors ligne

 

#3 2016-10-07 05:46:22 Re : Une question sur un shader.

Pertuit
membre
Date d'inscription: 2011-11-21
Messages: 52

Re: Une question sur un shader.



Merci nono. Je vais regarder et posterai le résultat. Pas de possibilité de faire ça directement dans le code du shader donc ?

Dernière modification par Pertuit (2016-10-07 05:57:14)

Hors ligne

 

#4 2016-10-07 09:58:15 Re : Une question sur un shader.

nononononono
membre
Lieu: Toulouse
Date d'inscription: 2011-02-04
Messages: 614

Re: Une question sur un shader.



Ben si, justement...
Ton shader sert à dessiner dans ton rendu, il faut incorporer une image en feedback et la mélanger avec un truc du genre :

couleur+=vec3(texture2d(ID_Texture_Feedback,gl_TexCoord[0].st).rgb);
couleur/=2.;

Mais si tu utilise des FragCoords au lieu de TexCoords cela risque d'être difficile à mettre en place...

Hors ligne

 

#5 2016-10-10 12:25:20 Re : Une question sur un shader.

Pertuit
membre
Date d'inscription: 2011-11-21
Messages: 52

Re: Une question sur un shader.



Non, je ne m'en sors pas... Aurais-tu un exemple sur lequel je pourrais m'appuyer ? Les textures 2D, FragCoord et TextCoord ne sont pas très parlant pour moi.

Hors ligne

 

#6 2016-10-10 13:43:17 Re : Une question sur un shader.

nononononono
membre
Lieu: Toulouse
Date d'inscription: 2011-02-04
Messages: 614

Re: Une question sur un shader.



J'ai réecrit les shaders et le patch pour te donner un exemple.
A adapter pour ton rendu souhaité. smile

Hors ligne

 

#7 2016-11-07 15:29:44 Re : Une question sur un shader.

Pertuit
membre
Date d'inscription: 2011-11-21
Messages: 52

Re: Une question sur un shader.



Merci beaucoup nono !! A priori, c'est tout à fait ça.
(mille excuses pour la réponse tardive)

Hors ligne

 

#8 2018-10-06 17:17:21 Re : Une question sur un shader.

Pertuit
membre
Date d'inscription: 2011-11-21
Messages: 52

Re: Une question sur un shader.



Bonjour à tous,

Je reprends ce post et me penche de nouveau sur le programme de dessin avec des shaders, après l'avoir un peu laissé de côté... Le programme proposé par nono dans le post précédent fonctionne, mais les shaders ont une beauté cachée qui ne se livre pas facilement. Bien que le code soit assez simple, je ne vois vraiment pas comment le modifier pour introduire d'autres couleurs... Déjà, la technique du "ping-pong de rendu" entre deux chaînes gemframebuffer... Waouu, la classe nono !

Je cherche à dessiner des traits de plusieurs couleurs, mais dès que j'envoie une nouvelle couleur, toute l'image change de couleur également. Est-ce que ce n'est pas possible d'obtenir ceci avec le programme ?
http://codelab.fr/up/image-2.png
(autoportrait)

Merci de votre réponse.

RP

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2018