Ars Robota — 2010-10-03 21:34:32

Salut à tous,

Toujours dans mes pérégrinations Processing-esque, je m'attaque aux particules et je rencontre un petit soucis. Je veux utiliser noise() pour déterminer la position (en 2D) de mes particules, comme Robert Hodgin avec Tendrils.

Je sais comment utiliser noise() pour déterminer la taille de mes particules:

void setup() {
  size(300,300);
  background(127);
  noStroke();
}

void draw() {
  int nbr=10;
  float xoff=0.0;
  float inc=0.3;
  for(int x=0;x<nbr;x++) {
    xoff+=inc;
    float yoff=0.0;
    float s;
    for(int y=0;y<nbr;y++) {
      yoff+=inc;
      s=noise(xoff,yoff)*(width/nbr);
      ellipse(x*(width/nbr)+nbr,y*(height/nbr)+nbr/2,s,s);
    }
  }
}

Mais je n'ai aucune idée quant à la manière d'utiliser un Perlin noise en 2D pour déterminer la position de mes particules... Quelqu'un aurait-il une idée pour y arriver?

Merci beaucoup,
Ars Robota

emoc — 2010-10-03 22:24:51

Salut,

citation :

Mais je n'ai aucune idée quant à la manière d'utiliser un Perlin noise en 2D pour déterminer la position de mes particules...

Je ne comprends pas bien ce que tu veux faire?

A tout hasard, sur le bruit de Perlin en 2D : http://freespace.virgin.net/hugo.elias/ … perlin.htm
et http://emoc.org/hackpact/27/applet/
et

Code (p5) :

void setup() {
  size(600,600); background(127);
  noStroke(); smooth();
}

void draw() {
  for (int i = 1; i < 1000; i++) {
    float x = noise(i) * width;
    float y = noise(i+1) * height;
    float s = noise(i) * 10;
    ellipse(x,y,s,s);
  }
  noLoop();
}
Ars Robota — 2010-10-03 23:05:13

Salut emoc,
Et bien je veux juste utiliser noise() pour déterminer les positions x et y de mes particules, à la manière du sketch de Hodgin.

emoc — 2010-10-04 02:14:46

ok, je n'avais pas regardé tendrils... :)

une explication des "perlin noise flow fields" : http://www.andysaia.com/radicalpropositions/?p=60
et un exemple en processing : http://www.openprocessing.org/visuals/?visualID=8407

emoc — 2010-10-04 16:54:58

Celui-ci aussi peut t'être utile : http://openprocessing.org/visuals/?visualID=6753

step — 2010-10-04 18:45:06

Hello,

Ci dessous qq autres liens qui pourraient aider, sans doute un peu redondants avec les liens donnés par emoc, mais différents :

http://processing.org/discourse/yabb2/Y … 195253971]
le code de lenny a la particularité d'être vraiment compact et le résultat pête bien.

http://www.openprocessing.org/visuals/?visualID=793
http://leafcutterjohn.com/?p=552
http://www.red3d.com/cwr/steer/FlowFollow.html

Ars Robota — 2010-10-04 22:02:45

Cool, merci pour tous ces liens gentlemen je vais me pencher là-dessus et je vous ferais part de mes conclusions (oude mes galères)...

Kénavo les potos!

@step: le premier lien ne fonctionne pas malheureusement!

step — 2010-10-05 09:59:29

Oups...
http://processing.org/discourse/yabb2/Y … 1195253971
devrait mieux aller.