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 11 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 image2–image4) 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—