I am trying to create an effect where I have several objects (say, cubes) which draw their color from an underlying texture.

Imagine, for example, if I had a rectangular region consisting of side-by-side cubes (or alternatively one large object with many joined cubes). I also have a texture of, say, a rainbow in front of a blue sky.

The effect I desire is that each object draws its color from the texture (i.e., a cube in the top-right corner gets the color of the top-right corner of the texture). Ideally, I would like that each object/cube is colored uniformly, say by extracting the color of the pixel closest to its position. The result would be a very grainy representation of the texture (depending on the resolution of my cubes).

Do you know if such an effect is possible in Blender Cycles?

  • 1
    $\begingroup$ Are those cubes static? $\endgroup$ – FFeller Mar 16 at 20:23
  • 3
    $\begingroup$ Is this the kind of thing you are looking for ? youtu.be/05HFa3jNBH0?t=24 $\endgroup$ – Gorgious Mar 16 at 20:30
  • $\begingroup$ Yes, we can assume they are static $\endgroup$ – J.Galt Mar 16 at 20:31
  • $\begingroup$ @Gorgious: Yes, that's exactly what I was looking for - thank you! $\endgroup$ – J.Galt Mar 16 at 20:32
  • $\begingroup$ @J.Galt Do tell me if you have trouble achieving it, I'll try to write an answer, he goes pretty fast in the video $\endgroup$ – Gorgious Mar 17 at 8:27

This is just a response to mark this question as answered. The user Gorgious linked a video which showed the solution: youtu.be/05HFa3jNBH0?t=24

The trick seems to be to switch to top-down, orthographic view, then project a UV map from view, shift the UV map over the desired part of the texture, then select 'individual origins' and scale the UV map projections of each object waaaaay down. Done =)

Thanks, Gorgious!

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.