Annonce

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


#46 2011-12-21 19:23:05 Re : Shaders.................

philippe boisnard
membre
Date d'inscription: 2008-09-23
Messages: 478

Re: Shaders.................



comme dit : voici un premier rendu de masses/GLSL entièrement commandé par pd et pmdp (il n'y a bien sûr aucune saccade au niveau du rendu, de même que sa qualité est infiniment supérieure en vraie).
les 5 particules sont toutes autonomes, on pourrait leur donner ce que l'on veut en tant que mouvement. le gradiant des particules est lui-même modulable.
en bref >> un seul .frag (pas de vertex)
le principe est celui du float makepoint(float x,float y,float fx,float fy,float sx,float sy,float t) { }

Dernière modification par philippe boisnard (2011-12-21 19:27:34)

Hors ligne

 

#47 2012-01-08 10:06:15 Re : Shaders.................

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

Re: Shaders.................



Salut philippe, tu arrives à combien de points de rendu avec ce shader? parce que pour moi passé les 500, j'ai l'impression que c'est le CPU qui prends le relai et du coup ça bug a fond... Du coup je cherche un autre type de rendu ou le calcul des points se ferait dans la texture et le rendu dans une autre mais ça coince un peu pour le moment... Dis moi si tu as une piste
1rNO

Hors ligne

 

#48 2012-01-08 10:20:48 Re : Shaders.................

philippe boisnard
membre
Date d'inscription: 2008-09-23
Messages: 478

Re: Shaders.................



Yeap >>> en fait je n'ai pas développé cela sur 500 points !! mais bravo ! !! ! ! 
en fait oui cela bloque le cpu au niveau de puredata, en fait il faut essayer de transformer  le mode positionnel de chaque masse = pmpd ancienne version n'est pas terrible, je vais essayer de passer en pmpd2 qui est bien meilleur, puisqu'il a le moteur msd, et qye c'est le nouvel algo de Cyril Henry et Nico Montgermont.
Mais là j'étais dans d'autres algo => notamment la gestion de 10000 lettres environ dans ma carte e voeux.

Hors ligne

 

#49 2012-01-08 11:33:01 Re : Shaders.................

philippe boisnard
membre
Date d'inscription: 2008-09-23
Messages: 478

Re: Shaders.................



en fait je rfléchissais là et j eme disais que deux voies possibles :
> la première avec un push matrix ??? à voir
> la seconde directement dans le script .frag >> à partir de fractal
> la troisième en déclarant une itération et faisant varier le positionnel à chaqu eitération :
exemple :

#ifdef GL_ES

// là je dois sortir, je réédite mon post plus tard, pour expliquer le fract du GLSL.
precision mediump float;
#endif

uniform float time;
uniform vec2 mouse;
uniform vec2 resolution;

void main(void)
{
    float scale = sin(0.3 * time) * 2.5 + 5.0;

    vec2 position = (((gl_FragCoord.xy / resolution) - 0.5) * scale) + scale * 0.75 * (mouse - 0.5);

    float gradient = 0.0;
    vec3 color = vec3(0.0);

    float fade = 0.0;
    float z;

    vec2 centered_coord = position - vec2(0.5);

    for (float i=1.0; i<=128.0; i++)  //ici changer le nombre d'itération pour les particules
    {
        vec2 star_pos = vec2(sin(i) * 64.0, sin(i*i*i) * 64.0); //position à chaque itération
        float z = mod(i*i - 128.0*time, 256.0);
        float fade = (256.0 - z) / 256.0;
        vec2 blob_coord = star_pos / z;
        gradient += ((fade / 384.0) / pow(length(centered_coord - blob_coord), 1.5)) * (fade * fade);
    }

    color = vec3(gradient * 2.0, gradient, gradient / 2.0);

    gl_FragColor = vec4(color, 1.0 );
}

Hors ligne

 

#50 2012-01-08 18:46:11 Re : Shaders.................

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

Re: Shaders.................



Ouais ,en fait j'utilisait une déjà itération pour mon rendu sur 500 points, (enfin itération sur un texture2D(Sampler, vec2..)) c'est pour ça que je comprends pas pourquoi ça rame; enfibon, ma petite idée est que chaque itération se fait sur le tableau de vecteur (gl_texcoord...)donc 500 iterations reviendrais à lire/ecrire 500 fois le tableau de texture, mais bon c'est une supposition.
Sinon, c'est marrant, je pensait que ta gestion de 10000 lettres était tout simplement une image gérée manière texture. Tu affiche réellement 10000 lettres séparées?

Hors ligne

 

#51 2012-01-08 20:05:42 Re : Shaders.................

philippe boisnard
membre
Date d'inscription: 2008-09-23
Messages: 478

Re: Shaders.................



oui il y a 10000 abs >> cela me permet d'écrire ce qu eje veux dans lécran, de faire défiler, quand tu regardes le clip en entier, des lignes de texte, là je termine le mouvement vertical, tu peux taper en live les textes, et hop tu les lances ils circulent.
L'ensemble en fait pèsent pas lourd car il n'y a en fait que peu de textures, puisque je ne fais tourner qu'une dizaine de matrices en gemframebuffer qui se répartissent aléatoirement sur es 10000 abs. ...
là je vais mettre une seconde carte de voeux, avec spécial dédicace shader en cascade (pas multipass, mais qui se suivent.

Hors ligne

 

#52 2012-01-09 09:40:14 Re : Shaders.................

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

Re: Shaders.................



voici mon .frag, si tu veux bien test et me dire si c'est pareil pour toi...
Je teste le tien de ce pas...


uniform vec4 mouse;
uniform float timer;
uniform float aa_th;
uniform float max_th;
uniform sampler2D mytex;
float smoothMult = 1.0/(aa_th-max_th);

float calcMetaBalls(vec2 pos){
   
    float val =  0.3 / distance(pos, vec2(1.0, 0.80));
   
    val += 0.1 / distance(pos, mouse.zw/512.);

    float i,j;
/*
//test avec calcul blob issu texture
for (i=1.;i<100.;i++)
    {
    float j = 0.1;
    vec4 color= texture2D(mytex, vec2(i, j));
    vec2 coord= color.xy;
    val += 0.1 / distance(pos, coord/100.);
    }*/
//test avec calcul blob incrémenté   
    for (i=1.;i<100.;i++)

    for (j=1.;j<100.;j++)
    {
    float k, l;
    k = i/100.;
    l = j/100.;
    val += 0.01 / distance(pos, vec2(k,l));
    }
}

    return val;
}

void main(void)
{
    vec2 screenPos = (gl_FragCoord.xy / 512.);
    float val = 0.0;
    float temp = calcMetaBalls(screenPos);

    //thresholding
    if(temp<max_th){
       val = 0.0;
    } else {
      if(temp<aa_th){
       val = smoothstep(1.0, 0.0, (aa_th-temp)*smoothMult);
      } else {
       val = 0.7;
      }
    }

    gl_FragColor = vec4(val);
}

Hors ligne

 

#53 2012-01-09 15:46:40 Re : Shaders.................

philippe boisnard
membre
Date d'inscription: 2008-09-23
Messages: 478

Re: Shaders.................



Yop
testé rapide : 1/ t'as une variable déclarée qui sert à rien (timer)
2/ en effet c'est grave tout bloque sur mon macbook pro quand je le lance donc je ne vois rien.
3/ en fait tu essaies de faire quoi ? de mêler des particules à une texture ? si oui : il vaudrait mieux travailler avec d'abord la création de particules puis ensuite en les mettant en buffer de les lancer sur une texture ? à vérifier.

mais en effet là cela bloque pour moi immédiatement

voici un exemple au niveau du lettrage (de happy new year)
128 blobs en GLSL
qui sont en gemframebuffer et envoyés dans un extrude-shader mis en gemframebuffer et envoyé dans
un dernier shader de détoureur

Dernière modification par philippe boisnard (2012-01-09 18:02:35)

Hors ligne

 

#54 2012-01-09 18:05:46 Re : Shaders.................

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

Re: Shaders.................



Poy,
pour le timer, j'ai oublié de le virer...
en fait, là c'est incrémenté 10000 fois, donc c'est normal que ça bugg, déja que 500 chez moi ça traine (faut dire que mon ordi à bien quelques années de trop...), vire l'incrémentation du j pour que ça tourne...
Non, en fait ce que je veux faire, c'est utiliser les couleurs xy d'une texture comme makepoint.(cf le passage en commentaire)...
Mais je pense que c'est tout simplement l'algo de rendu de points qui est trop lourd, du coup je travaille sur un autre...

Dernière modification par nononononono (2012-01-09 18:07:29)

Hors ligne

 

#55 2012-02-05 00:52:57 Re : Shaders.................

Olivier
N°4
Lieu: Chalon sur la Saône
Date d'inscription: 2009-04-07
Messages: 1471
Site web

Re: Shaders.................



Yo !!

Un petit message pour vous dire, qu'avec Pascale et Benj, on vient de se frapper 3 jours d'initiation au GLSL avec Jack Boyer d'RYBN...
C'est juste magique !! smilesmile

Je vous colle un petit patch obtenu cette aprèm...
C'est du déjà vu, mais le coup du [pix_delay] et des [texunit ( ouvrent de formidables perspectives...
A noter que les textures peuvent être chopées n'importe où dans le patch... elles n'ont pas besoin d'être nécessairement dans le [gemhead] du [glsl_program]...


le fichier vidéo est inaccessible : http://openatelier.labomedia.org/2F/I-and-I.flv (HTTP/1.1 301 Moved Permanently)


http://codelab.fr/up/I-and-I.png

citation :

c'est un peu plus compliqué de les mettre en "série" comme les pix

Avec des [gemframebuffer] la chose semble, a priori, assez simple...
En tous cas, ils permettent d'obtenir des feedback tranquilou Bilou... smile
Je vous posterai ça...

Pour info, on a tissé ça sur une Vanilla avec un GEM 0.93.3 compilé aux p'tit oignons...
Vu le confort de la chose, je ne sais pas si je vais retourner un jour sur Pd-extended... tongue

Il nous reste encore 2 jours avec Jack... (lundi et mardi)
Si vous avez des questions très spécifiques, c'est le moment... :-)

Dernière modification par Olivier (2012-02-05 01:04:28)


L'Amour au Peuple !

Hors ligne

 

#56 2012-02-05 02:09:00 Re : Shaders.................

pob
Exterminator
Lieu: Rennes
Date d'inscription: 2009-10-13
Messages: 765
Site web

Re: Shaders.................



J'ai pas pu résister...

Hors ligne

 

#57 2012-02-05 02:23:25 Re : Shaders.................

Olivier
N°4
Lieu: Chalon sur la Saône
Date d'inscription: 2009-04-07
Messages: 1471
Site web

Re: Shaders.................



lol


L'Amour au Peuple !

Hors ligne

 

#58 2012-02-05 07:24:39 Re : Shaders.................

Hans Cenhalan
membre
Date d'inscription: 2011-12-16
Messages: 86

Re: Shaders.................



as t il des abstractions personnelles ?

Hors ligne

 

#59 2012-02-05 09:25:21 Re : Shaders.................

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

Re: Shaders.................



Salut olivier, cool j'ai une pléthore de questions!

Hors ligne

 

#60 2012-02-05 09:28:15 Re : Shaders.................

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

Re: Shaders.................



Question n1 :
comment traverser la limite des 0-1 pour les couleurs? (donc les utiliser comme tableaux de valeurs )

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024