Nodes/ComfyUI S4Tool Image/💀Image Tiling Pattern
ComfyUI Node

💀Image Tiling Pattern

Repeat an image into a canvas, with rotation and chaos

By S4MUEL-404·Created about a year ago·Updated 10 months ago· 4
💀Image Tiling Pattern
  • image
  • image2
  • image3
  • image4
  • image
width1024
height1024
spacing0.00
offset0.00
rotation0
scale1.00
opacity1.00
padding_top0
padding_right0
padding_bottom0
padding_left0
randomize_scale0
randomize_rotation0
randomize_opacity0

Tiling is a bread-and-butter compositing move: take one small image and repeat it across a larger canvas - a texture, a pattern, a contact-sheet layout. 💀Image Tiling Pattern from the S4Tool-Image pack does that, and then it goes further than most tiling nodes by letting you rotate, scale, offset, and randomize each instance, plus drop in up to three extra images so tiles can mix. It's a small pattern generator hiding inside an image pack.

The mechanism is straightforward compositing math: the node lays your input image down repeatedly across a canvas of your requested width and height, applying per-tile spacing, offset, rotation, scale, and opacity as it goes. The randomization knobs add jitter to scale, rotation, and opacity per tile - which is what turns a robotic grid into something that looks like a hand-placed collage or a natural texture. Up to four source images (the main one plus image2image4) can participate, so mixed-element patterns are possible without stacking nodes.

The inputs that matter

The image plus canvas size are the core:

  • image - the tile source.
  • width / height (up to 4096, default 1024) - output canvas size.

Then the per-tile controls:

  • scale (0–10, default 1), rotation (0–360), opacity (0–1), spacing and offset - the manual layout knobs. spacing and offset take small values (±10) in whatever tile-unit the node uses internally; you'll feel your way in.
  • padding_top / padding_right / padding_bottom / padding_left - reserved margins on each side of the canvas.
  • randomize_scale, randomize_rotation, randomize_opacity (0–100) - jitter amount for each property. Start low; 100 is a lot of chaos.
  • Optional image2, image3, image4 - extra tile sources to mix in.

Output: image - the tiled canvas as an IMAGE.

Install

Standard pack install:

cd ComfyUI/custom_nodes/
git clone https://github.com/S4MUEL-404/ComfyUI-S4Tool-Image.git
pip install -r ComfyUI-S4Tool-Image/requirements.txt

Or ComfyUI Manager → search "S4Tool-Image" → Install → restart. Pure Pillow/numpy, no model downloads.

Gotchas

  • Not a seamless-tile generator - the name says "tiling pattern," but this node doesn't make edges wrap seamlessly; it places repeated instances on a canvas. If you need a truly seamless texture for a diffuse pass, this isn't that tool.
  • Randomization is unseeded - randomize_* values change with each run, so if you need a reproducible pattern, keep randomization at 0 and rely on the fixed layout knobs.
  • Spacing/offset feel abstract at first - they're unitless small floats; budget a couple of test runs to calibrate before building the real workflow.
  • Compositing, not geometry - tiles are drawn over each other, so a large scale with multiple images can cover earlier tiles. Order matters.

For quick patterns, collages, and mixed-element layouts it's a genuinely useful one-node solution - just know you're getting placement, not seamlessness.

Category💀S4Tool

Inputs (18)

NameTypeDefaultDescription
imageIMAGE
widthINT10241–4096
heightINT10241–4096
spacingFLOAT0.00-10–10
offsetFLOAT0.00-10–10
rotationFLOAT00–360
scaleFLOAT1.000–10
opacityFLOAT1.000–1
padding_topINT00–2048
padding_rightINT00–2048
padding_bottomINT00–2048
padding_leftINT00–2048
randomize_scaleINT00–100
randomize_rotationINT00–100
randomize_opacityINT00–100
image2optIMAGE
image3optIMAGE
image4optIMAGE

Outputs (1)

NameTypeDescription
imageIMAGE