Instancer
Brief Description
The instancer is a swiss-army knife used to replicate a source image many times. The Dimension Size is useful to give for each dimension the number of instances to create. Note that this is multiplicative: Setting Number of Dimensions to 2 with Dimension 1 Size to 5 and Dimension 2 Size to 3 will create 15 instances. The Number of Dimensions is useful in tandem with the Instance Transform for each dimension. The Accumulate Transform parameter is very important: For each instance the transform is applied one more time than the previous instance. For example, to make a Grid of instances, the Instance Transform 1 can be used to move instances along the X axis and the Instance Transform 2 can be used to move instances along the Y axis.
For a full tutorial on the instancer, please take a look at the dedicated section on the Academy
Controls
| Parameter / Script Name | Type | Default | Function |
|---|---|---|---|
Enabled / enabled
|
Boolean | On | |
Instance Mode / instanceMode
|
Choice | Source | - Source: Instantiate the whole composition. - Source Sub-Layers: Instanciate specific layers of the composition. |
Template / instance_template
|
Image | - | |
Num. Dimensions / numDimensions
|
Choice | 1 |
- 1 - 2 - 3 - 4 |
Dimension 1 Size / dim0_size
|
Float | 3 | |
Dimension 2 Size / dim1_size
|
Float | 1 | |
Dimension 3 Size / dim2_size
|
Float | 1 | |
Dimension 4 Size / dim3_size
|
Float | 1 | |
Instance Origin / layersOriginMode
|
Choice | Global Origin |
- Invividual Origins: Each instance transform is relative to its rectangle position selected by Origin
- Global Origin: The anchor point is global to all elements |
Instance Origin X / originX
|
Choice | Center |
- Left - Middle Left - Center - Middle Right - Right |
Instance Origin Y / originY
|
Choice | Center |
- Bottom - Middle Bottom - Center - Middle Top - Top |
Instance Transform 1 / transformDim0
|
- | ||
Accumulate Transform 1 / accumTransform
|
Boolean | Off | When checked, each instance have the transform applied as many times as its instance index + 1 |
Centered Accumulation 1 / accumCentered
|
Boolean | Off | When checked, the accumulation is centered |
Transform First Instance 1 / appliesToFirstInstance
|
Boolean | Off | When checked, the instance transform is also applied to the first instance |
Instance Transform 2 / transformDim1
|
- | ||
Accumulate Transform 2 / accumTransform1
|
Boolean | Off | When checked, each instance have the transform applied as many times as its instance index + 1 |
Centered Accumulation 2 / accumCentered1
|
Boolean | Off | When checked, the accumulation is centered |
Transform First Instance 2 / appliesToFirstInstance1
|
Boolean | Off | When checked, the instance transform is also applied to the first instance |
Instance Transform 3 / transformDim2
|
- | ||
Accumulate Transform 3 / accumTransform2
|
Boolean | Off | When checked, each instance have the transform applied as many times as its instance index + 1 |
Centered Accumulation 3 / accumCentered2
|
Boolean | Off | When checked, the accumulation is centered |
Transform First Instance 3 / appliesToFirstInstance2
|
Boolean | Off | When checked, the instance transform is also applied to the first instance |
Instance Transform 4 / transformDim3
|
- | ||
Accumulate Transform 4 / accumTransform3
|
Boolean | Off | When checked, each instance have the transform applied as many times as its instance index + 1 |
Centered Accumulation 4 / accumCentered3
|
Boolean | Off | When checked, the accumulation is centered |
Transform First Instance 4 / appliesToFirstInstance3
|
Boolean | Off | When checked, the instance transform is also applied to the first instance |
Motion-Blur Settings / motionBlurSettings
|
Choice | Disabled |
- Disabled: Disable motion-blur for the instance transform
- Use Composition Settings: Uses composition motion-blur settings - Custom Settings: Local motion-blur settings |
Motion-Blur Quality Mode / mbQualityMode
|
Choice | Adaptive |
Determines the sampling mode.
- Adaptive - Samples Count |
Samples Count / mbSamples
|
Float | 90 | Number of motion-blur samples. 0 disables motion-blur. |
Motion-Blur Quality / mbQuality
|
Float | 0.6 | Multiplier for adaptive motion-blur sampling. |
Shutter Angle / shutterAngle
|
Float | 180 | Controls motion-blur duration. |
Shutter Phase / shutterPhaseType
|
Choice | Centered |
- Centered - Start - End - Custom |
Custom Phase / customPhase
|
Float | -90 | Offset to shutter angle. |
Layer Index Mode / layerIndexMode
|
Choice | Bottom To Top |
- Bottom To Top - Top To Bottom - Random - Custom |
Instance Index / layerIndex
|
Float | 0 | |
Layer Index Start Offset / layerIndexStartOffset
|
Float | 0 | |
Layer Index Step / layerIndexStep
|
Float | 1 | |
Layer Index Wrap / layerIndexWrapMode
|
Choice | Loop |
- Clamp - Loop - Mirror - Stop |
Layer Index Seed / layerIndexRandomSeed
|
Float | 0 | |
Index Mode / instanceIndexMode
|
Choice | Forward |
- Forward - Backward - Shuffle |
Shuffle Seed / instanceShuffleSeed
|
Float | 0 | |
Instance Time Offset / timeOffset
|
Time | 0 | Apply time offset to each instance. |
Accumulate Time Offset / accumTimeOffset
|
Boolean | Off | Offset is applied multiple times based on instance index. |
Accumulate Time Offset Mode / timeOffsetMode
|
Choice | Stacking Index |
- Instance Index - Stacking Index |
Apply Time Offset To First Instance / applyTimeOffsetToFirst
|
Boolean | On | |
Instance Start Time / instanceStartTime
|
Time | 0 | |
Instance Duration / instanceDuration
|
Time | 0 | |
Instance Opacity / opacity
|
Float | 1 | |
Accumulate Opacity / accumOpacity
|
Boolean | Off | |
Apply Opacity To First Instance / applyOpacityToFirst
|
Boolean | Off | |
Invert Instance Opacity / invertInstanceOpacity
|
Boolean | Off | |
Instance Blend Mode / blendMode
|
Choice | Normal | (Full list exactly as provided in your source — unchanged.) |
Use Composition Format / crop_to_comp
|
Boolean | On | The output image is cropped to the composition format. |
| Mode/Function | Calculation | Description |
|---|---|---|
| Add | Ac + Dc | The source is added to the destination and replaces the destination. This operator is useful for animating a dissolve between two images. |
| Color Dodge | if Ac < 1 min(1,Bc / (1 - Ac)) else 1 |
Brightens the backdrop color to reflect the source color. Painting with black produces no changes. |
| Lighten | max(Ac, Bc) | The resultant color is the lighter of source or destination colors. If the source is lighter, it replaces the destination. Otherwise, the destination is preserved. |
| Linear Dodge | min(Ac + Bc, 1) | Lightens the source image to reflect the destination image color |
| Screen | Ac + Bc - Ac * Bc | The source and destination colors are complemented, multiplied and the resultant color replaces the destination. The resultant color is always at least as light as either the source or destination colour. |
| Hard-light | if Ac <= 0.5 multiply(Ac) else screen(Ac) |
The source color is used to determine if the resultant is either a multiplication or screening of the colors. If the source color is lighter than 0.5, the destination is lightened as if it were screened. If the source color is darker than 0.5, the destination is darkened, as if it were multiplied. |
| Hard Mix | if vivid-light(Ac,Bc) < 0.5 then 0 else 1 |
|
| Linear Light | if Ac < 0.5 linear-burn(2 * Ac, Bc) else linear-dodge(2 * (Ac - 0.5), Bc) |
Use linear-burn to decrease brightness on dark colors and linear-dodge to increase brightness on lighter colors |
| Overlay | if Bc <= 0.5 2 * Ac * Bc else 1 - 2 * (1 - Bc) * (1 - Sc) |
The destination color is used to determine if the resultant is either a multiplication or screening of the colors. Source colors overlay the destination whilst preserving its highlights and shadows |
| Pin Light | if B >= 0.5 lighten(Ac, 2 * Bc - 1) else darken(Ac, Bc * 2.0) |
A mix of full strength Lighten and Darken blend modes: It completely removes all mid tones |
| Soft Light | if 2 * Ac <= 1 Bc - (1 - 2 * Ac) * Bc * (1 - Bc) else if 4 * Bc <= 1 Bc + (2 * Ac - 1) * (4 * Bc * (4 * Bc + 1) * (Bc - 1) + 7 * Bc else Bc + (2 * Ac - 1) * (sqrt(Bc) - Bc) |
The source colour is used to determine if the resultant color is darkened or lightened. If the source color is lighter than 0.5, the destination is lightened. If the source color is darker than 0.5, the destination is darkened, as if it were burned in. The degree of darkening or lightening is proportional to the difference between the source color and 0.5. If it is equal to 0.5, the destination is unchanged |
| Vivid Light | if Ac < 0.5 color-burn(2 * Ac, Bc) else color-dodge(2 * (Ac - 0.5), Bc) |
A mix of color dodge and Burn. It’s a more intense and saturated contrast mode and can add more saturation to unsaturated images. |
| Difference | abs(A - B) | The resultant color is the absolute difference between the source and destination colors |
| Divide | if Dc > 0 and Ac > 0 Ac / Bc else 0 |
Divides the values of the image A by the values of the image B. Stops 2 negative values from becoming a positive value |
| Exclusion | Ac + Bc - 2 * Ac * Bc | The resultant color is similar to that of the difference operation. However, the exclusion resultant color appears as a lower contrast than that of the difference resultant color. |
| Minus | Ac - Bc | Image B is subtracted from image A |
| Subtract | Bc - Ac | Subtract the A image values from the B image values. |
| Color | SetLum(Ac, Lum(Bc)) | Creates a color with the hue and saturation of the source color and the luminosity of the backdrop color. This preserves the gray levels of the backdrop and is useful for coloring monochrome images or tinting color images. |
| Hue | SetLum(SetSat(Ac, Sat(Bc)), Lum(Bc)) | Creates a color with the hue of the source color and the saturation and luminosity of the backdrop color |
| Luminosity | SetLum(Bc, Lum(Ac)) | Creates a color with the luminosity of the source color and the hue and saturation of the backdrop color. This produces an inverse effect to that of the Color mode. |
| Saturation | SetLum(SetSat(Bc, Sat(Ac)), Lum(Bc)) | Creates a color with the saturation of the source color and the hue and luminosity of the backdrop color. Painting with this mode in an area of the backdrop that is a pure gray (no saturation) produces no change. |
| Replace | Ac | Replace the background image by the foreground image |
| Destination Atop | Bca × Aa + Aca × (1 - Ba) | The part of the destination lying inside of the source is composited over the source and replaces the destination |
| Destination Out | Ba * Bc * (1 - Aa) | The part of the destination lying outside of the source replaces the destination. |
| Destination Over | Aa * (1 - Ba) + Bc | The destination is composited over the source and the result replaces the destination |
| Destination In | Bc * Aa | The part of the destination lying inside of the source replaces the destination. |
| Source Atop | Ac * Ba + Bc * (1 - Aa) | The part of the source lying inside of the destination is composited onto the destination |
| Source Out | Ac * (1 - Ba) | The part of the source lying outside of the destination replaces the destination. |
| Normal | Ac + Bc * (1 - Aa) | The source is composited over the destination |
| Source In | Ac * Ba | The part of the source lying inside of the destination replaces the destination. |
| Xor | Ac * (1 - Ba) + Bc * (1 - Aa) | The part of the source that lies outside of the destination is combined with the part of the destination that lies outside of the source. |
| Average | (Ac + Bc) / 2 | The average of the 2 images |
| Conjoint Over | if Aa <= Ba Ac + Bc * (1 - Aa / Da) / b else Ac |
Same as the normal over mode, except that when partially covered by both A and B, A hides B |
| Disjoint Over | if Aa + Ba >= 1 Ac + Bc * (1 - Aa) / Ba else Ac + Bc |
Same as the normal over operation, except that when partially covered by both A and B, the 2 images do not overlap |
| Geometric | 2 * Ac * Bc / (Ac + Bc) | Similar to average but only where A and B overlap |
| Grain-Extract | Bc - Ac + 0.5 | Extracts grain from image A and adds it ontop of the image B |
| Grain-Merge | Bc + Ac - 0.5 | Merges a grain layer (for example extracted from the Grain-Extract mode) on-top of the B image. This is the opposite of the Grain-extract mode |
| Hypot | sqrt(Ac * Ac + Bc * Bc) | In-between the Plus and Screen operators |
| Reflect | Aa * Aa / (1 - Ba) | Darkens the output image using values from the source image. |
| Color Burn | if Ac > 0 1 - min(1, (1 - Bc) / Ac) else 0 |
Darkens the backdrop color to reflect the source color. Painting with white produces no change. |
| Darken | min(Ac, Bc) | The resultant color is the darker of source or destination colors. If the source is darker, it replaces the destination. Otherwise, the destination is preserved. |
| Linear Burn | Bc + Ac -1 | Darkens the source image and reflects the destination image |
| Multiply | if Ac < 0 and Bc < 0 0 else Ac * Bc |
The source color is multiplied by the destination color and replaces the destination. The resultant color is always at least as dark as either the source or destination color. Stops 2 negative values from becoming a positive value |
| Multiply (Math) | Ac * Bc | The source color is multiplied by the destination color and replaces the destination. Unlike Multiply, 2 negative values become a positive |
| Parameter / Script Name | Type | Default | Function |
|---|---|---|---|
Use Composition Format / crop_to_comp
|
Boolean | On | The output image will be set to the composition format. Useful to increase performances when a lot of elements are instanced outside the Composition. |
