Texture Array

Hi. Is it possible to use a kind of array to distribute a procedural dot in texture? I thought Scale in mapping could do this, but it isn´t working…


What’s the purpose? Fill every square, fill random squares, or filled by a preset array?

  1. To fill every square, separate XYZ and modulo each component before combine XYZ going into texture. Using this you could also skip the mapping node and just scale the UVs instead.
  2. This will get tricky and somewhat confusing. Although I’ve done something in the past (random domino texture) I’d probably have to set it up again.
  3. More messy than tricky. We don’t have array operators, but I’ve done some messy “manual array” stuff in the past. But I’d have to look into it.

If number 1 is what you’re after, I won’t waste time on the others :slight_smile:

CarlG, I want to put every dot inside a square, control the dot size and its color.

While image textures get tiled when the UV is scaled down, the gradient doesn’t.

The reason is because the gradient uses only the coordinate [0, 0, 0] as center.

The workaround is to split the vector (with the ‘separateXYZ’), apply a math:modulo 1, to each component, subtract 0.5, combined them again and scale it, before feeding it to the gradient node…