Terrain
Wolken sind keine Kugeln, Berge keine Kegel, Küstenlinien keine Kreise. Die Rinde ist nicht glatt – und auch der Blitz bahnt sich seinen Weg nicht gerade. [ Benoît B. Mandelbrot, The Fractal Geometry of Nature ]
Information
Heigtmap Heightmaps oder Höhenfelder sind zweidimensionale Felder, welche der Beschreibung von Höhenreliefs dienen. Die Höhendaten werden in einer Rastergrafi k als Helligkeitswerte abgespeichert. Das heißt, je höher der Wert ist, desto heller ist der Grauwert. Die zweidimensionale Grafik bildet demnach die Grundlage für die Generierung der Oberfläche eines dreidimensianelen Objektes. Um das Relief zu erstellen wird die Rastergrafik abgetastet und der Helligkeitswert bestimmt dann den z- bzw. Höhenwert an einer bestimmten Position des Polygonnetzes. Diese Technik wird oft in der Computergrafik verwendet, da der Speicheraufwand sehr gering ist.
Exersice
Images
Get the Code: imagesDisplay.pde
Get the Code: imagesFastblur.pde | fastblur.pde
Get the Code: images.pde
Get the Code: images3DCamera.pde
Get the Code: imageBlob.pde
Random Walker
Get the Code: randomWalker.pde
Terrain
Step 1:
Two-dimensional, middle scaled Noise used to generate a PImage.
Step 2:
A new two-dimensional, high scaled Noise used to generate another PImage. It's used as a mask for the first noise image to set high areas and low areas.
Step 3:
Multiply the brightness values of each pixel to get get bigger black areas (e.g. sea, lakes).
Step 4:
A random walker is used to generate another PImage. It's used again as a mask for the noise image to set high areas and low areas and eliminate unnatural looking patterns of the noise field.
Step 5:
A new two-dimensional, low scaled Noise used to generate another PImage. It's used as a mask for the first noise image to set more details in the high areas.
Step 6:
With the distance function the brightness of each pixel is mapped: center = high brightness, edges = no brightness.
Get the Code: terrain.pde
Links
-
Generierung virtueller Geländeformen durch Rauschfunktionen und Filter >
innerworld.
sourceforge .net/ documentation .html -
Landscape Generator with Boids >
www.
openprocessing .org/ sketch /72920 -
Terrain Generator >
www.
openprocessing .org/ sketch/ 31002 -
Erosion >
www.
openprocessing .org/ sketch/ 46451 -
Library: Blob Detection >
www.
v3ga .net/ processing/ BlobDetection/ -
Library: PeasyCam >
mrfeinberg
.com/ peasycam/