Map UV (remap) is missing parts... Bug or missing feature?

Hi all.

I am trying to setup a simple setup for remapping a texture on to geometry based on the UV pass.
I will do this by using the Map UV node in the compositor.

When I tried though I found that UV faces lying outside the 0-1 square will not be mapped by the Map UV node and they will instead be transparent.

Many times when you use tileable textures your UVs are larger than the 0-1 square…
So is this a bug or is it simple a missing feature?
Or is there another way to solve it?

Demo setup attached…

Best - Ejnaren


SimpleTextureRemapTest.blend (5.83 MB)

Unfortunately it’s a “missing feature” or I’d rather say - different behavior.
When you have your unwrapped mesh outside the image, values of UV Pass go below 0.0 or above 1.0.
Coordinates are stored in R and G (red and green).
B (blue) value of UV pass is set to 1.0 all over and is ignored.
R = 0.0 means left, R = 1.0 means right.
G = 0.0 means bottom, G = 1.0 means top.
“Map UV” node doesn’t understand values below zero and above one, so when it gets such values it makes the image transparent in those areas.
The solution is to properly remap negative and greater that one values.
Here’s how I’d solve this:

(I also attach the blend file)

… I know that questions may arise about this setup. Why so many nodes? What do they do? How did you figure it out? etc.
Ok, so let the picture do the talking.
Below you’ll see what happens to range of values when we pass this range through certain nodes. I hope it’s understandable.


SimpleTextureRemapTest_FIXED.blend (5.91 MB)

@BartekSkorupa Sorry for the late respons.
This was a fantastic answer.
This should be written somewhere in the manual.
Hope it will help others.
Thank you very much for the detailed explanation.