How could I create a tiling material that tiles relative to the surface and starting from the corner of the texture?

I need help making a material for a mesh which can scale nicely with the tiling, I’ve tried using a world aligned material node and whilst I can achieve the tiling, the issue comes when I need to scale the mesh, the tiling gets all offset and stuff, I need it to tile from the top left of the texture and to just continue tiling. Could anyone help with this?

Diagrams to help illustrate (blue rectangle is mesh surface)
image

(green rectangle is mesh surface)
image

World aligned materials use a global UV which has nothing to do with the mesh, so it’s only going to align if you have your mesh in the correct place.

The only other way to scale textures with the object is to write the material to do that

But that’s a bit of a fiddle.

It’s easier to just change the UV scale in the material instance, if it really must start from the corner like that.

2 Likes