Genr8

Bookmark and Share

Genr8 is a plug-in for maya and works generating surfaces. It is very interesting because fuse the universal growth conditions with evolutionary search.

Genr8 it is developed via API of Alias|WaveFront’s and Combine 3D Map L-System that growth in a digital environment, with gramatical evolution. the seed is designed to react of the digital nature and give to the user the control during the evolutionary adaptation, Genr8 dosen’t have structural or material criteria, and the most of the times the results are closer to the chaos.

Genr8 was Developed by Martin Hemberg and Una – May O’reilly and the people of the Emergent Design Group from the MIT.

salida6.jpg

Genr8 has a lot of components to create and evolve differents elements, like curves and surfaces.

Attractors, > act attracting surfaces.

Repellors, > similar like attractor but in a oposite way.

Gravity, > as it`s name, act in an uniform way in the global coordinates (x, y, z)

Boundaries, > you can create boxes, surfaces, to act like boundaries of the growth.

Seeds, > the seed by default it is a regular polygon, and you can control the side, starting position of the polygons, also you can define your own seeds, for example drawing curves or using the grammar of genr8.

this example represent a square:

Edge0 + ~ Edge1 + ~ Edge0 + Edge1
Edge0 -> Edge0 [ [ + Edge1 ] – ~ Edge1 ] Edge0
Edge1 -> Edge1 [ [ + Edge0 ] – ~ Edge0 ] Edge1
Angle 90

there are some conditionals to create grammar, In the first line you have to define the Axiom, and only can be a regular polygon, and may only contain ” + “, “~” and Edge(number). Each word should be separated by one space, and the lines need a return. and the comments have to be in separated lines and starting like C++ with two “//”, so there are more elements and rules to create seeds by grammar, but this is an idea how can they work.

To create my Own grammars I start using the predifined types and then looks how they work and so on…

After you define your grammar you have to define the different elements of the growth, for example:

n/ -> the number of the growth steps

s/ -> the sacale of each growth step

rn/ -> the noise that you want in the growth.

fc/ -> fix the center of the growth

ds/ -> if you want draw every step of the growth

and there are too much Mel commands to create and define the environment.

So the plugin has to control: the scaffold, the environment, the Grammar, the Genetic Engine and the Fitness.

The first exercises come from the page and the papers who explain genr8. the other ones are developed by me.

captura-pantalla.jpg

Default Examples:

genr8 -kc

genr8 -fp -sl 8 -n 5 -ba 70 -t 4 -r 0 0 3 -rn 0.1 -s 1.1

polyCube -w 3 -h 4 -d 3
genr8 -t 3 -rn 0.1 -n 4

polyCube -w 3 -h 4 -d 3
genr8 -t 3 -n 5 -a 0 0 4 -g z -0.5

PolySphere -r 5
genr8 -t 4 -n 5 -ba 90 -g z -1 -sp 0 0 7 -sl 3 -s 1.3

genr8 -t 4 -n 6 -ds -s 1.3 -r 0 0 -3 -r 0 4 0 -ba 90 -r 1 -3 -4 -r 2 2 5 -r -3 -2 1

genr8 -t 3 -n 5 -g z -1 -r 0 0 -3

polyCube -w 3 -h 4 -d 3
genr8 -t 4 -n 5 -r 3 3 3 -co

personal experiment:

genr8 -n 5 -rn 0.2 -t 4 -r 0 0 3
-intersting surface results

-Variation 1
genr8 -n 5 -rn 0.2 -t 4 -g z -1 -r 0 0 -3

-Variation 2
genr8 -n 8 -rn 0.1 -t 3 -g z -1 -r 0 0 3 -r 0 0 -3
polyCube -w 15 -h 15 -d 5
genr8 -n 5 -rn 0.2 -t 4 -s 1.2 -a 7.5 7.5 -1 -a -7.5 7.5 -1 -a 7.5 -7.5 -1 -a -7.5 -7.5 -1 -r 0 0 -1
-before to execute, create the polyCube and select it.

-Variation 1 the same thing, select the Polycube before
genr8 -n 4 -rn 0.2 -t 4 -s 1.2 -a 3 3 -1 -a -3 3 -1 -a 3 -3 -1 -a -3 -3 -1 -r 0 0 -1

-Variation 2
-Select the polyCube to get a crazy result in the box.
-or leave it to run free to produce some kind of flower.
genr8 -n 8 -rn 0.2 -t 4 -s 1.2 -a 2 3 -1 -a -2 3 -1 -a 2 -3 -1 -a -2 -3 -1 -r 0 0 0

-looks some familiar element
genr8 -n 8 -fp -t 4 -r 0 0 -5

salida1.jpg

salida2.jpg

salida3.jpg

salida4.jpg

salida5.jpg

Leave a Reply