← All ideas
  • Published 27 Oct 2022

Keep UV Dimensions When Changing Image Size

Having to scale your UVs once you've changed the size of your image is fine and all, but it would just be nice if they kept the size they were when they were unwrapped. Sometimes you need to fiddle around with the size of your texture for texel density, and having to scale your UVs just hinders the process. Can there be something like this please?

57.1%

Development Status: Open

Upvote 4 Downvote 3
SethTooQuick
27 Oct 2022

5 Comments

Lauloque

But... UVs don't scale depending on the textures to begin with. It's the textures who are mapped by the UVs. It's just a coordinates' system between 0 and 1. Textures just occupy the entire space, period.

2
SethTooQuick Author

I'm saying that maybe there should just be an option to have their dimensions stay the same, no matter the size of the canvas. The canvas is obviously changing shape. I'm sure this could even be done in an addon

Lauloque

But UVs don't have a canvas, they are not a bitmap, they are quite literally a 2D version of your 3D mesh, a bunch of connected points in a normalized orthonormal graph.

Not only that, but UVs have no relationship with textures. They are absolutely independent of each other. It's just a vector data that you can use for mapping a texture to a mesh, and not even necessarily a bitmap. They do not care about resolution, you can use an infinity of different textures with the same UV and they will be mapped the same way, it's their purpose.

You can have tools to resize UV elements to a texel density (the addon Textools does it), but inverse-resizing your UVs when you change the resolution of your UVs sounds like the most backwards way of texturing to me.

1
SethTooQuick Author

Say you UV map your nice little square, and you want that SQUARE to be SQUARE once you use it on an image that ISN'T SQUARE. You now have to scale it manually to make it not stretched and SQUARE like it was before. Sure, the UV "area" is 0-1 I get that, but that doesn't mean that Blender couldn't account for the change in scene dimensions, and not screw with what's there. What I'm asking isn't backwards. I'm not asking for it to be the default either. Just an option. An option to keep the UV dimensions the same, no matter how many changes to the texture dimensions / resolution there are. To keep the UVs that I have already right where they were before I changed the texture to a different sized one.

What this could also mean if this is done, that the UVs wouldn't shrink on image change, which could be neat.

bestelix

I agree, the UVs editor zoom level (of course the actual uvs remain 0 to 1) resets in the editor all the time you switch the texture with another having different size or when you just remove the background texture. This is very annoying.