Aller au contenu

sDuplicate Node

By Kriss Norde

sDuplicate creates N copies of a vector shape with a cumulative transformation (position, rotation, size) per copy. The vector equivalent of Duplicate 2D, but it works on shape data before rasterization - sharp at any scale, precise for kaleidoscopes and geometric arrays.

Overview

sDuplicate multiplies an input shape by applying a transformation delta to each copy. Copy 1 = transform × 1, copy 2 = transform × 2, etc.

The 4 Axis Modes control how the rotation pivot evolves - that is what separates a linear array (aligned copies) from a radial pattern (copies in orbit).

Where to find this node

  • Effects Library: Tools > Shape > sDuplicate
  • Quick add: right-click in the Node Editor → Add Tool > Shape > sDuplicate

sDuplicate vs Duplicate 2D

Duplicate (2D)
Works on bitmaps. After sRender. Each copy = a rasterized image, resampled for every copy (can add blur).
sDuplicate
Works on vector shape data. Before sRender. Each copy stays vector and sharp at any scale. Faster too.

Rule: duplicating a shape → sDuplicate. Duplicating an image / footage / composite element → Duplicate 2D.

Inputs

  • Input1 (required) - the output of another shape node. The shape to duplicate.

Setup

Linear array (a row of stars):
sStar → sDuplicate (Copies 5, X Offset 0.15, Rotation 0)
     → sRender

Radial kaleidoscope:
sStar → sDuplicate (Copies 12, Rotation 30°, Axis Mode = Origin)
     → sRender

Shrinking spiral:
sEllipse → sDuplicate (Copies 20, X Offset 0.03, Rotation 15°, Size 0.95)
        → sRender

Controls tab

Copies
Number of copies generated (not counting the original). Watch performance beyond 30-50 copies.
X / Y Offset
Cumulative offset per copy. In normalized coordinates. 0.1 = 10% of the width/height per copy.
Rotation
Cumulative rotation per copy (in degrees). Combined with Axis Mode = rotation around different pivots.
X / Y Size
Cumulative scale per copy (multiplicative). 0.9 = each copy 10% smaller than the previous one.
Axis Mode
4 modes (see the dedicated section) - sets where the copies rotate.

The 4 Axis Modes

Absolute
Each copy rotates around a fixed absolute point (usually the center of the frame).
Origin Relative
Each copy rotates around its own center (the axis follows the copy). The copies stay in place but rotate individually.
Origin Absolute
All the copies rotate around the origin of the source shape (a fixed pivot on the original shape). Creates a classic radial pattern.
Progressive
The axis shifts progressively. Creates complex spiral patterns where each copy has a different rotation center.

For a classic kaleidoscope / mandala: Origin Absolute + Rotation 360/N where N = number of copies.

Use cases

  • Kaleidoscope / mandala - Copies 12, Rotation 30°, Axis Origin Absolute = a perfect radial pattern. Vector = sharp at any resolution.
  • A linear array of identical elements - 10 rectangles lined up horizontally: Copies 9, X Offset 0.1, the rest = 0.
  • Shrinking spiral - high Copies + Rotation + decreasing Size = a spiral effect like a nautilus / whirlpool.
  • Radial rays - a thin sRectangle + Copies 8, Rotation 45° = a ray star / decorative sun.
  • Geometric pattern for a background - a simple shape + sDuplicate with subtle offsets = an abstract motion design background.
  • Fireworks / burst - sStar + radial sDuplicate (Copies 16, Rotation 22.5°) + decreasing Scale = a graphic explosion effect.
  • Compound logo with repeated elements - a base logo + sDuplicate for cleanly repeated design elements.

Tips

  • Rotation = 360/N for a complete radial pattern - 12 copies = 30°, 8 copies = 45°, 6 copies = 60°. The copies spread perfectly around the center.
  • Decreasing Size for a spiral - 0.9-0.95 gives a nice tight spiral. 0.5 = a decrease that is too abrupt.
  • Performance: keep Copies reasonable - 50+ copies slow the render down significantly. If you need a lot of copies, consider sGrid or a real particle system.
  • Origin Absolute = a clean pattern for radial motifs. The other 3 modes are more specialized and give less predictable results.
  • Combine with sTransform to animate the global rotation center = a kaleidoscope that spins on top of its copies spinning individually.
  • sDuplicate + sBoolean - duplicate, then subtract a large shape to create complex stencils.
  • For copies with random variations (unique color/size per copy), use sJitter after sDuplicate.