Brownian Motion

Innan min arbetsplan var klar hade jag börjat undersöka brownian motion som jag hittade i samband med att jag letade efter information om perlin noise för min bakgrund. Brownian motion upptäcktes utav Robert Brown år 1827. 

Brownian motion är namnet på en modell baserat på en observation som beskriver hur partiklar rör sig. Om man gör den till en graf där man genererar Browniam motion kallas det för  “Random Walk”. Den algoritm jag har använt mig utav för att generera bilder/grafer utav Brownian motion är en Random Walk algoritm i 2D (den är altså uträknad och utrirad i två dimensioner) är relativt simpel och jag lyckades utforma den utifrån den korta beskrivning som finns på Wikipedia. Jag har också tragglat mig igenom delar utav den text som Robert skrev i 1800-talets begynnelse för  och det är en rätt intressant läsning som handlar om hur han observerat små pollen partiklars rörelser och förändringar.

Det jag själv har experimenterat med har gett en del positiva resultat i mån utav användbarhet inom Procedural generation, här kommer ett par utav de textur grafer jag har genererat matematiskt.

Test

Den här bilden i kombination med en Perlin Noise skulle kunna beskriva vart man ska placera vatten tillexempel.

Alternativt att man skulle kunna ha den för att bestämma vart det ska finnas landmassor eller ha den för att styra blandningen utav olika terräng typer.

 

 

 

 

 

 

 

 

 

 

 

Test_x4_smudge_2

Den här bilden är en modifierad version utav algoritmen jag satte ihop och den genererar denna “Random walk” med  med mellanrum och ger en effekt utav en suddigare mer utsmoothad graf. Denna skulle man kunna använda för att beskriva bergskedjor på en kontinent.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Algoritmen jag använder är relativt lättförstådd och jag kommer att utveckla en bättre förklaring med tiden men den fungerar igenom att man väljer ut en punkt att börja på. Man väljer sedan ut en riktning att börja dra ett sträck åt och för varje pixel i bilden väljer vi att addera en ny riktning på den riktning som vi drar sträcket på. Den riktningen som adderas ska vara utav helt slumpmässigt genererad. Eftersom en dator inte kan generera helt slumpmässiga tal måste vi använda oss utav en en slumpgenerator som iallafall försöker efterlikna helt slumpmässiga tal.

Här är ett kodexempel jag skrivit:

http://pastebin.com/LaUCtycm

 

 

 

Brown, R, “A brief account of microscopical observations made in the months of June, July and August, 1827, on the particles contained in the pollen of plants; and on the general existence of active molecules in organic and inorganic bodies.” Phil. Mag. 4, 161–173, 1828