Displacement Map Implementation

Hey! I am looking to get answers regarding displacement mapping in Omniverse. After going through the forums I can see that this issue has been brought up a lot and NVIDIA developers have stated that is has been in the roadmap / planned to be developed and other responses say that it is not under development.

I see responses as recently as Apr 08 '24 in this forum post saying that “Yes this is still not part of the roadmap”. (Displacement/Height map in Omniverse - #12 by Richard3D)

While some other forums seem to suggest that is in development or at least was being scoped out.
(PBR material displacement map? - #9 by oglu)
(How can I use displacement maps?)

I understand that Omniverse can handle an extremely large vertex count which leads to the possibility of baking these displacements into the mesh itself. But given one of Omniverses main use cases is synthetic data generation the need to be able to vary textures dynamically is crucial. Varying textures would be one big application and being able to use their respective displacement maps to be able to generate photorealistic results are crucial.

Given an example where one would add randomization to tiled textures for larger models we would need displacement to perfectly align with this variation in the mdl shader node graph.

For example generating large scale terrain it is not plausible to constantly bake these displacement maps in other software suites that are not designed to handle extremely large poly counts. Ideally we would be able to import a model that would be tessellated dynamically within omniverse and apply displacement maps to this dynamic mesh to improve render time and just to be generally optimized as much as possible.

Omniverse is a powerful software suite with some workarounds, but this displacement mapping limitation is significant enough to make it hard to justify building a production pipeline around it.

Could I please get clarity on whether this functionality is in development or on the roadmap? If it’s not planned for development, what’s the recommended workaround for achieving this use case in Omniverse?

Thank you in advance for your help

2 Likes