Repeater

Repeat the child content in grid, radial or linear layouts with per-instance variation

Props

  • mode

    Layout used to place the repeated instances

    Type
    "grid" | "radial" | "linear"
    Default
    grid
  • cropLeft

    Crop inset from the left edge of the source element (fraction of its width)

    Type
    number
    Default
    0
  • cropRight

    Crop inset from the right edge of the source element (fraction of its width)

    Type
    number
    Default
    0
  • cropTop

    Crop inset from the top edge of the source element (fraction of its height)

    Type
    number
    Default
    0
  • cropBottom

    Crop inset from the bottom edge of the source element (fraction of its height)

    Type
    number
    Default
    0
  • columns

    Number of grid columns

    Type
    number
    Default
    3
  • rows

    Number of grid rows

    Type
    number
    Default
    3
  • gapX

    Horizontal gap between grid cells

    Type
    number
    Default
    0.05
  • gapY

    Vertical gap between grid cells

    Type
    number
    Default
    0.05
  • stagger

    Horizontal offset applied to every other row (brick layout)

    Type
    number
    Default
    0
  • flip

    Mirror alternating columns/rows for seamless tiling patterns

    Type
    "none" | "alternate-flip-x" | "alternate-flip-y" | "both"
    Default
    none
  • count

    Number of repeated instances

    Type
    number
    Default
    8
  • radius

    Orbit radius of the radial layout

    Type
    number
    Default
    0.3
  • startAngle

    Angle of the first instance on the orbit

    Type
    number
    Default
    0
  • sweep

    Angular span the instances are distributed across

    Type
    number
    Default
    360
  • faceCenter

    Rotate each instance to face the orbit center

    Type
    boolean
    Default
    false
  • direction

    Direction of the linear layout in degrees (0 = rightward)

    Type
    number
    Default
    0
  • spacing

    Distance between consecutive instances

    Type
    number
    Default
    0.2
  • instanceScale

    Progressive scale multiplier applied per instance (compounds with each copy)

    Type
    number
    Default
    1
  • instanceRotation

    Additional rotation in degrees applied per instance (accumulates with each copy)

    Type
    number
    Default
    0
  • instanceOpacity

    Progressive opacity falloff applied per instance (compounds with each copy)

    Type
    number
    Default
    1
  • hueShift

    Hue rotation in degrees added per instance

    Type
    number
    Default
    0
  • phase

    Seamless layout animation phase (0-1 wraps to the identical layout)

    Type
    number
    Default
    0
  • zOrder

    Stacking order of overlapping instances

    Type
    "forward" | "backward"
    Default
    forward
  • jitterPosition

    Random per-instance position offset

    Type
    number
    Default
    0
  • jitterRotation

    Random per-instance rotation

    Type
    number
    Default
    0
  • jitterScale

    Random per-instance scale variation

    Type
    number
    Default
    0
  • jitterOpacity

    Random per-instance opacity variation

    Type
    number
    Default
    0
  • seed

    Random seed for the jitter values

    Type
    number
    Default
    0

Usage

<Shader>
  <Repeater
    radius={0.3}
  >
    <Circle />
  </Repeater>
</Shader>