Fabric integration

Hi!

I’m currently learning Omniverse development and have been looking for developer documentation about Fabric, but I haven’t been able to find much information.

I noticed that Cesium for Omniverse seems to include Fabric integration. If possible, could you point me to any relevant developer documentation or share some guidance on how to develop with it?
Thank you very much.

Hi @ryoichi_kato

A good place to start is here: USDRT Project Overview — USDRT

You can also look at the code in Cesium for Omniverse, e.g. FabricGeometry.cpp.

The reason we use Fabric is because we don’t need tiles to persist on the stage and we want to avoid the overhead of USD scene composition. Fabric is a post-composition representation of the scene and has a faster path to the GPU.

In the future we might consider using USDRT rather than working with Fabric directly. I think the choice between the two depends on your use case.

That’s a great document. I’ll definitely check it out and try running the source code. Thank you!

Just out of curiosity, have you considered implementing Cecium for Omniverse via the Scene Index? if it were implemented on the Scene Index instead of Fabric, Cesium would potentially work across all USD apps.

Just out of curiosity, have you considered implementing Cecium for Omniverse via the Scene Index? if it were implemented on the Scene Index instead of Fabric, Cesium would potentially work across all USD apps.

We tried that initially but it was too slow, less than 5fps. We didn’t know as much about USD then so it’s possible we were doing something inefficient.

That makes sense.

Currently I am trying to insert a scene index into Omniverse but Hydra doesn’t seem to use my custom scene index.
I’ll try to use Fabric or USDRT as you mentioned above.

Thank you for your answer!