Code + Replicator leaving ghost shadow when triggered on frame

I’m trying to produce some synthetic aerial images of a truck appearing on grass surface.

However when I specify the replicator to run & get triggerred each frame. The produced image (except the first frame) shows multiple “ghost” shadow as shown below.

code:
with rep.trigger.on_frame(num_frames=150):
rep.randomizer.worker()
with camera:
rep.modify.pose(position=rep.distribution.uniform((4000, 11000, -7800), (6000, 14000, 7800)), look_at=surface)
Questions:

  1. How can I set the replicator triggerred e.g. every 3 seconds so the scene has enough time fully rendered?

  2. Is there a way I can get rid of those shadows & have objects rendered with fully effect (shadow) ?

Thank you.




Hi!

Did you check subframes?
Rendering with Subframes Examples — Omniverse Extensions latest documentation (nvidia.com)

Try adding rt_subframes=50 argument to your rep.trigger.on_frame(num_frames=150) call

1 Like

no I never thought of using subframes. thanks heaps for the response. I will add that to the triggering cmd and let you know the outcomes.

Yes you need at least 100 subframes to get a “clean” re-pass. This is because even the “realtime” renderer needs subframes to interate a new frame. You can set it as low as you can until the ghosting appears.

Thank you everyone for for looking into this. I will add subframe attribute in the triggering cmd line and let you the outcome.

Really appreciated your help!

I added rt_subframes=100 and now as it had intervals long enough to fully render the shadow, it produced the image as expected.

This is a wonderful community to be part of. thank you all Omniverse Heros. I got stuck on this for 2 weeks!

1 Like