I am training a robot to navigate in complex procedurally generated environments and I would like to be able to load a given environment on the fly. All the environments I am generating are composed of around 15.000~20.000 vegetation assets (about 25 unique assets scaled at different sizes), and 250 meshes that make the heightmap.
To generate my world I am putting 9 of my procedurally generated world into an USD and I am hidding 8 of them.
Then when I need to use a given envrionment I am hidding the current one and displaying the one I want. I am using the visibility property of the prim to do that.
The problem is that it takes 4minutes to load, which is way too long. Also, when I have a single environment I am getting 120fps, but when I have 9 environments, 8 hidden, 1 displayed I only get 50fps.
I do not understand why the display time is that slow, all the assets should be loaded no? Or why I am loosing that many fps. After all, the other environments are hidden, so why are they taking a hit? Should I be using another property of the USD? It is worth noting that I am using the isInstance property to reduce memory usage.
Thanks in advance,