Reka Grid Documentation

Interface

Reka Grid Basics

RekaGrid generates parametric shapes and places this shape instances on grid points. Each instance have follow parameters: Radius, Rotation angle, X and Y offset, Color, Alpha and it can be visible or hidden.

Grid is represented by rows and columns count, width, height and center point. Grid can be regular or hexagonal. Shape can have any points and can be triangle, rectangle, hexagon, circle. With Middle offset shape can became a star. Shelf Length can add a shelf on each point of shape. Also hard edges can be rounded with Shape Rounding Radius. Combination of all this parameters can generate complex and abstract shapes. Also Shape can have fill or stroke.

Almost all parameters have following structure:
Value + Noise + Layer

Math is the same: for each point of grid Value applies with Noise calculated for this point and applies with Layer intensity for this point.

Value is constant for all instances. If you need same radius for all instances you need to set Value and leave Noise Multiplier and Layer Multiplier equal to 0.

To add some randomness you can use Noise and animate it with Noise offset or Noise Evaluate. Also instance parameters can be driven with Layer color intensity.

1Select for Layer source any layer or precomp
in Parameters->Layer.

2Inside instance parameter select Layer Index
and adjust Multiplier.

Finally this three values summed up for each point of grid. This allows you a lot of possibilities to animate Instances parameters.

Another control Noise&Layer Offset determines 0 point of generated noise or layer intensity. By default Noise&Layer Offset equals 0, in this condition noise have range [-1 to 1]. When Noise&Layer Offset is 100% - noise range is [0,1]. And finally when Noise&Layer Offset is -100% - noise range is [-1,0]. Same for Layer intensity. Noise have additional control Mult Layer. This Layer multiplies by noise amplitude allows to mask noise with layer.

Last but powerful feature is Scripts. Scripts allows you to edit any parameter in grid individually with elements index. Please read more about Scripts here.

Shapes

1Elements count sets points count for shape.

2Shelf Length adds a shelf on each point of shape.

3Link Middle Offset creates a new point beetwen each points of shape and expand it outside or inside.

4Shape Rounding Radius rounding hard edges with given radius.

Scripts

Scripts allows you to edit any parameter in grid. With this feature any adjustment is possible for group or individual element. It means you can for example hide any element of grid or set angle of rotation individually.

Script excecutes for every instance of grid. You can use col and row indexes [ i , j ] for individual adjustment.

In table below listed all available variables. Note that some of them is read only.

Variable

Description

Read

Write

time
Time in seconds for a current frame
+
-
frame
Frame number
+
-
i, j
Element indexes, i for rows and j for columns
+
-
xPart, yPart
Normalized element indexes [0..1]
+
-
xCount, yCount
Columns and rows count
+
-
visible
Boolean value determines to draw element or not
+
+
x, y
Coordinates for each element
+
+
angle
Rotation angle for each element
+
+
radius
Shape rounding radius
+
+
r, g, b, a
Colors and Alpha channel
+
+
feather
Edge feather value
+
+
stroke
Boolean value determines to draw fill or stroke
+
+
strokeWidth
Stroke width in pixels
+
+
partsCount
Shape points count
+
+
anchorX, anchorY
Anchor offset for x and y directions
+
+
scaleX, scaleY
Scale for x and y directions
+
+
angleOffset
Angle offset
+
+


Functions

Functions allows you to get values from custom Sliders, Colors and Layers. Also to get Noise and Random parameters.

GetFloat(ind) — returns the Parameters Slider value with the given index ind [1..10]


GetColor(ind) — returns the Parameters Color value with the given index ind [1..10]


GetLayer(ind, xPart, yPart)— returns the Parameters Layer value with the given index ind [1..10] and x and y coords [0..1]


GetNoise(ind, xPart, yPart) — returns the Parameters noise value with the given index ind [1..10] and x and y coords [0..1]. Noise amplitude, scale, offsets and seed can be adjusted from Parameters -> Noises


GetRandom(ind, i, j) — returns the Parameters random value with the given index ind [1..10] and i and j integer values (indexes). Random range and seed can be adjusted from Parameters -> Randoms

Scripts is based on Lua language, so you can use built-in mathematical functions like a math.sin (x) in your scripts.


Sample Scripts

This sample demonstrate how to turn each element by 90 degrees CV from each other:

angle = (i + j) * 90

This sample demonstrate how to create wave using sine function with amplitude from Slider 1 and offset from Slider 2:

y = y + GetFloat(1)*math.sin(x+GetFloat(2))

This sample demonstrate how to scatter random colors to instances from colors list. Random range and seed can be adjusted from Random 1 parameters:

r,g,b = GetColor(GetRandom(1,i,j));

In this sample Stroke and Fill is randomized. Random seed can be adjusted from Random 1 parameters:

stroke = false
if ( GetRandom(1,i,j) > 50 ) then
stroke = true
end