Thank you for such an extensive breakdown.
It’s very helpful and interesting. One thing I picked up is using multiple mapping nodes to tweak the group as a whole, which is already useful.
I gave your method a try, and also hit a wall. I tweaked your grid layout (image 5 in your post) as follows:
to get the perfect round dots I need, and at the end of the process, I got this:
It’s an interesting “old broken TV” effect, but as you can see, it doesn’t match your work. I was able to move the dots into columns, but there’s a huge gap between the rows.
Clearly, I was unable to suss out certain parts of image 7 from your post. Namely:
and that’s probably where the magic needs to happen.
I’ve been able to offset the patterns on X, but what I need to do is offset them along a 30 degree angle.
I messed with it a bit using more mapping nodes, and was able to get this far:
but the row gap is still there, and it breaks when I scale it.
If you can provide the data that’s unclear in your image, it would be a big help in duplicating your results.
Returning to my original attempt
My method was to offset the dot and rotate two copies at 120 and -120 degrees to create the triad.
Then the trick would be to tile it thusly (your tip about 1/sqrt(3)
came in useful here, BTW):
and since this hexagon pattern is rotated 30 degrees from the one in your example, it’s simply a matter of moving each copy along X to produce this:
I got as far as this for the triad before I hit the wall I wrote about in my original post:
I grouped it and offset multiple copies to create the image above. I’m sure you’re not surprised to hear it took a lot longer to render than your version.
I am convinced there is a way to do this same thing mathematically, but as of yet, it still escapes me.
I’ll keep working on it.
Update
I kept working on it, and simply eyeballed the offset for each color until I got the correct (-ish) positions.
To wit:
If you look close you can see that the image pixelization isn’t matching the size/spacing of the hex dot grid. Still too short on the Y axis.
I haven’t figured out that particular fix, but when the dots are small enough, you can’t even tell.
Although the overall rotation is still off by 30 degrees – you can see how the interference pattern stripes vertically and horizontally, rather than diagonally – I think this solution is close enough for Jazz, so let’s mark this topic as solved!