Differences in Texture Mapping Results after Using SwapUV in 7 and 8

Hi all,

As mentioned in the title, using the Dir _SwapUV command to swap surface directions in Rhino 7 and Rhino 8 results in completely different mapping outcomes for the same file.

  • In Rhino 7, the program first swaps the textures and then tiles them.
  • In Rhino 8, the program tiles the textures first and then swaps the complete tiled texture.

I suspect that changes were made in Rhino 8, but I’m not sure if this counts as a bug.

The following video demonstrates the operation, where you can clearly see the difference between them:

Here is the test file, saved as a version 7 file:

7.3dm (363.7 KB)

Rhino Versions:
Rhino 7 7.37.24107.15001
Rhino 8 8.8.24135.14001

Thanks @Ansen.A I’ve filed this as https://mcneel.myjetbrains.com/youtrack/issue/RH-82026

1 Like

Hi @Ansen.A

There are 2 completely different spaces in Rhino where the coordinate axes are commonly named U and V:

  1. The space where NURBS geometry is defined. Swap UV option in the ShowDir command swaps the U and V coordinates in this space.
  2. The space where texture mappings generate the texture coordinates into. Texture mapping UVW transforms operate in this space.

These 2 “UV” spaces have been mixed up quite a lot. And one of the reasons is that in the beginning of Rhino they were pretty much the same thing.

The Surface texture mapping that your model uses maps NURBS UVs into texture UVs. There was a bug up until Rhino 7 where the UVW transform of the Surface texture mapping was applied to the NURBS UVs before the actual texture mapping took place. We fixed that inconsistency in Rhino 8. So your conclusion about the change in the order was pretty accurate.

Thank you very much for your reply, I will inform my student.