Box projection question

Hello Blenderartists,

I’m coming from C4D. One part that’s a bit confusing to me is the box projection setting in Blender.

Let’s say I have 2 cubes with the same checkerboard material:

Is it possible to shift only the texture position of the second cube (so the pattern matches the edges), without having to create a new material?

Regards, Thijs

Try referencing an empty instead of the actual object.
Alternatively, I think it will respond like that if they share origo location.

The cubes are separate objects. Using an empty seems to affect both objects?

I would suggest using the Generated output of the Texture Coordinate node.
This allows you to change the texture space from the Object Data tab in the Properties panel.
Like so:


The yellow highlighted values are per-object.

1 Like

Thanks PyBlend, I didn’t know this panel.
I was already using the ‘move/scale texture space’ tools, but it was difficult to get the right size.
Setting the texture space size of both objects to ‘1’, means the checkerboard patterns will be exactly the same size, right?

Yes, granted that the object scale of both objects is 1, then setting the size to 1 should make both textures the same size.

1 Like

Yes. I though that was the idea. Apparently not when I re-read your question :slight_smile:
A bit messy, and this one may not be the best applications, but you can also assign an object ID and setup an if-then chain to do separate things to different objects based on object info/object id. In this case a mapping operation. I do this all the time to show different images on different instances of monitors, although I rely more on random than object id.

If adjusting texture space like PyBlend shows works, then go for it. But note that generated coordinates are subject to certain deformations.

Just a texturing trick. If you model i.e. a chair consisting of several “cut from wood” pieces, as long as you don’t rely on direction specific modifiers (i.e. Mirror) you can use same box mapped wood on all the pieces, enable the origins only option (top right), and rotate the origo until the mapping aligns the grain of the wood with the object. You can keep it like that and link it in as an instance (where each chair mapping can have it’s own offset/scale variation using object info/random), or bake down the result to a regular UV mapped texture.

I haven’t tried box mapping on location coordinates. Need to try that.