How do you make a rotation on a texture work without stretching if your texture is not tiling with a square aspect ratio?

How do I make a rotation on a texture work without stretching as you rotate if your texture is tiling in V: 1 and in U: 0.5 ?

I have this texture that should scale U: 0.766 and V: 0.442 , then I need to rotate my texture 45 degrees, but the rotation does not respect my aspect ratio, so it stretches the texture. The scale is based on measurements that is referring to a real world scale. I have no idea how to get the correct aspect ratio back now that the squash /stretch is applied by the rotation. Any math genius out there that can help me?

This should help:

  • Use 1 for your original TexCoord node’s tiling values
  • Rotate theTexCoord with a Rotator
  • Multiply the Rotator’s output with a Constant2Vector (with values of (0.766, 0.442))

Of course it had to be that simple. ^^,
Thank you. appreciate it.

Hi there.

I have the same problem, and in my case, unfortunately, I cannot use the solution above. This is because I use Bump and Parallax in my material. I am trying to create a master material with the ability to use Bump, Parallax, UV offset, scale and rotation. For the correct rotation of Bump and Parallax, the “Custom Rotator” must be at the end (after the scale and offset). Becaus I need to get two types of data - “scale + offset without rotation” for Parallax and Bump, and “scale + offset + rotation” for other textures. If the “Custom Rotator” is in the middle of this UV mapping chain, I will not be able to extract the “scale + offset without rotation” information. For this reason, the “custom rotator” must be at the end of the chain. This is the only way I know of to rotate the material properly when Parallax or Bump is on.I hope you understand what I mean.
But in such a material, there is still no way to correctly scale and rotate the material at the same time. (Only at 90 degrees)
Is there a solution?

You can try something like This:

Or This:

Or This:

Have you tested this system yourself? Unfortunately, rotation does not work in it at all. Rotation causes the texture to stretch and twist.

Can you tell me pleas a “A” value from lerp node?

Yes, If the texture shifts aspect ratio while you rotate. You have done something wrong.

A is 0.
Don’t remember why I used lerp and not multiply, but it works.

I made a copy of the material, (Only with diffuse map), but I still couldn’t get parallax to work.

That should work, but you will need an actual Heightmap/Displacement map texture to plug in there or you will not be able to see what you are doing when you type in values.
Also you forgot to add a Normal Texture.
Have a look at this tutorial:

Also The Parameter “Height Max Offsett” Needs to default to 1 not 0.
The min/max concept is to remap the range into values that give the best visual effect.

For instance these are the values I used in with this particular texture: