1
$\begingroup$

For some reason, I have a table made from separated wooden planks that shared the same material, and I'd like to draw something on this "surface". How do I do this dynamically, without ripping the overlaying texture apart and manually assigning chunks to each plank?

What's the correct name of this problem/technique?

Rough example with window-mapped texture, just for demonstration: example image

$\endgroup$
4
  • $\begingroup$ you can plug a b&w mask into the factor of a Mix Shader or the alpha output of the image if it has transparency $\endgroup$
    – moonboots
    Apr 29, 2021 at 12:42
  • $\begingroup$ @moonboots, sure, but how to map the image over the different meshes? Ofc, I can join them into the single mesh, but it doesn't look like a good solution. $\endgroup$ Apr 29, 2021 at 12:48
  • 1
    $\begingroup$ You could use Object coordinates of the Texture Coordinates node, specifying the same object mesh (the Object property on the node is is meant for this exact kind of thing). This way you’re referencing each part of the image using the same coordinates. $\endgroup$ Apr 29, 2021 at 13:10
  • 2
    $\begingroup$ I was thinking about selecting all the objects and making a Project From View but Rich's solution seems better $\endgroup$
    – moonboots
    Apr 29, 2021 at 13:16

1 Answer 1

2
$\begingroup$

Use the 'Object' coordinates of the Texture Coordinates node with the 'Object' property set to the same object for each of your meshes. This will use the same coordinates for each mesh so that the texture can be mapped over all of them.

Here's an example :

result and nodes

Each of the cubes is a separate object - all with the same material. Note that the Texture Coordinate node is set to 'Cube' (one of the cubes) for the Object. This means that the Object coordinates are always with respect to that specific object. The Mapping simply allows you to scale and position the image.

The 'Separate XYZ' and 'Less Than' nodes use the Z-channel of the Generated coordinates so that the texture is only used for the upper surface of each cube (otherwise it would also show down the sides and on the bottom).

$\endgroup$
1
  • $\begingroup$ Ahh.. I see! I thought @sleepy wanted to texture-paint. $\endgroup$
    – Robin Betts
    Apr 29, 2021 at 14:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .