Global scale material, but accept rotation/position. How?

I try to make architectural visualization. On my scene I have a lot object that should have the same material. Scale of texture on those objects should be the same.

I tryed use “Absolute World Position” node, and it works - scale is same on each object (it’s also nice that material are perfectly match between objects) but some of objects are not in south-nord position. Projection of textures on those objects are wrong. There is any possibility to force material to accept rotation of objects or positions of particular polygons? (with keeps same scale)

Or any workaround? Creating lots of material instances and adjusting tiling for each object to match scales are very time consuming.

There are special material functions for this, Called WorldAlignedTexture, WorldAlignedNormals and WorldAlignedTexture_Complex.