Cannot apply material/texture to USD files

Hello.

I am trying to generate synthetic data using Replicator Composer. When I select the room scenario to be a USD file and provide texture/material domain randomization, there are no changes in the wall or floor while executing Replicator Composer.

When I create a normal floor and wall with “scenario_room_enabled” as true and then provide the same texture/material argument, I can see the changes in texture/material in each frame.

Can we change texture/material of the floor or wall of a USD file or not ?

Note: I have named all the respective meshes as either wall or floor in the stage area.
My replicator Composer file:
backup_2.yaml (1013 Bytes)

Thanks in advance.

I’m not sure about this

But I’ve been using randomised HDRI sky boxes (with randomised sky lighting intensity)
It achieves a similar result- although it does not have a proper ‘floor’

I used GitHub - agmmnn/polydown: Batch downloader for polyhaven.com. Download 'HDRIs, Textures and Models' in any sizes with preview images. to get a good range of HDRs

I don’t need to apply textures to the wall or floor by creating them. I already have a USD file which has a room and I want to apply texture based Domain Randomization in that.

Hope I am able to explain the issue. Let me know if I need to provide more information.

Are you passing the mount argument when calling the replicator?
https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/manual_replicator_composer.html#mounted-paths

In your yaml file, you are signaling the textures as composed paths, and therefore you need a mount path to guide it.

Other than that, you are also missing the obj_count parameter, to let the replicator know how many assets you want to use from your list.

Hi all,

Nor I can not apply material/texture to USD files

I want to change the materials or color on the example USD object(S_TrafficCone.usd),
But it didn’t change anything on every frame.

My script parameter like this:

and the parameter file:
trafficcone_notflip.yaml (3.4 KB)

Please help to find out the problem, thank you very much!!

Hi @Ayizui

Try using the Omniverse Replicator with the script editor for generating synthetic data. It has lots of parameters you can change and you will be able to visualize all those changes when the pipeline runs. Check this out for further reference.

Best,
Mayank

Hi @mayank.ukani ,

Thanks for your reply!!

Is that meaning I can’t apply other materials on USD file to generate domain randomization by using “replicator composer”?

Because the replicator composer manual released Replicator Composer Manual — Omniverse Robotics documentation

thank you very much!!

Hi @Ayizui. I was facing the same issues where I was not able to apply textures/colors domain randomization to USD files but it was possible to apply it on the ground and wall created using the yaml file. So, I moved to the latest replicator composer SDK. You will still be using ‘replicator composer’ but from the SDK itself with script editor instead of command line argument. The API calls in the backend would still be the same I think. And yes, you can apply any textures you want with SDK, I don’t know what the issue is with applying textures when we create a yaml file and run it through the command line.

Hope this helps.

Hi @mayank.ukani ,

I am very thankful that you reply me quickly.
Yes, I try to use replicator API with script editor, and revise the sample code shown in Randomizing appearance, placement and orientation of an existing 3D assets with a built-in writer — Omniverse Extensions documentation, and it can be changed colors on USD file.

But I want to let camera capture randomly forklifts “inside” the warehouse,
do you know how to orientate all the objects by using replicator API?

Here is the script I modified, and the result is warehouse and forklift are located outside, like these:

warehouse_forklift.py (3.5 KB)

If you know more information to use the replicator API, can you please discuss it with me?

Thank you very much!!

Hi @Ayizui ,

Please check your updated code with changes done by me. Please note that I am not loading the environment with script editor. I have already loaded the warehouse scene and based on the size of the warehouse, I have limited the translation of the forklift so it doesn’t gets out of the warehouse.
warehouse_forklift.py (1.3 KB)

Note - This is running on Isaac-sim-2022.1 so you might need to change the translation range based on whatever version you use.

Hope this helps,
Mayank

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