Second UV-Set for Detail Normal Map


we are currently writing a connector for our application. We use geometries with two different UV-Sets and want to convert this to USD. Currently I´m able to create a Mesh inside USD with the first UV-Set. But now I need a second UV set that is used for the “Detail Normal Map”.

Can anybody share me a c++ sample, how to do that?

Thank you very much


This might help.
If you’re using the OmniPBR Materials, there’s already a built-in detail normal map channel towards the bottom of the material’s properties pane which will use the same UVs (first channel), and you can control its scale/rotation.

Hi Sean,

thank you for your reply. I know about the possibility to translate the detail-normal.

But I have two problems with that solution:

  1. I have to use the data that is already in our system (we have written a connector, that syncs our scene to omniverse), and the current system uses different UV-sets for normal und detail normal

  2. In out case the detail normal is used to create some details in funitures (for example wirkles). In those cases the detail normal has to be wrapped around the geometry and should not be tiled etc.

Pillow with diffuse and normal map on UV-set 0 (textures are tiled)

Pillow with diffuse and normal map on UV-set 1 (textures are wrapped around)

Pillow with detail-normal on UV-set 0 (I´ve disabled diffuse und and normal to make the problem more clear)… detail normal is now tiled like diffuse and normal map

Pillow with detail-normal un UV-set 1 (the detail normal is now wrapped around the geometry and create a nice wrinkle)

What I need is diffuse and normal map in UV-set 0 and detail normal und uv-set 1.

The ability to specify UV-set-index per map would make sense (like the translation). From my point of view, it does not make sense to use the same uv-set-index for every map… that renders the whole idea about different uv-sets on a geometry useless.


I’ve adapted the OmniPBR material and changed it in a way that it exposes a second UV-Index-property… and that worked at the end…

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.