owl-project / NVISII

Apache License 2.0
327 stars 28 forks source link

Data returned from rendering method is missing textures #94

Open zhuyifengzju opened 3 years ago

zhuyifengzju commented 3 years ago

I visualized data returned from render method, and it seems that the texture of the table is not rendered properly (the second screenshot). It would be great to look into this issue.

Screenshot from 2021-02-18 21-59-59 image

natevm commented 3 years ago

Hey @zhuyifengzju,

Is this after upgrading from a previous version?

Would you be able to share your script and data with me? Possibly over a Google drive link or similar? That would help me repro locally, and then from there I could solve the issue faster.

zhuyifengzju commented 3 years ago

Yes, this still happens after I upgrade to nvisii from visii. I'll try to write a simple case of the table and share with you.

natevm commented 3 years ago

@zhuyifengzju that dataset appears to be a Franka URDF. Guessing the table texture is being pulled in from an OBJ material?

Does this issue only occur then using the “render” function? Do you see the same issue when rendering in interactive mode? ( Using nvisii.initialize(headless = False) )

zhuyifengzju commented 3 years ago

Yes, either headless or not having the same problem. Yes the table texture is from a obj material. The visualization and image saving is fine though. For you reference, I am using import_scene function to import the mesh.

natevm commented 3 years ago

I believe I'm able to reproduce a similar issue to the one you have above. Seems like if a user issues many commands in a row followed by a call to render, a race condition can occur where some of the previous python scene edits are lost. I think I have a fix now, where I first process the entire command queue before starting the render. Going to try getting that into the next release along with another bug fix.

zhuyifengzju commented 3 years ago

Thanks a lot!

natevm commented 3 years ago

@zhuyifengzju Appologies for the delay. Would you be willing to test the new version of nvisii on pip (version 1.1) and let me know if your issue here is solved?