Preserving Appearance of Imported Solidworks Model

I am working with my institute on integrating Omniverse into a Solidworks CAD course, but I have been having trouble with Omniverse Create preserving the appearance of my imported assembly. I have tried importing the model as an IGES file and an SLDPRT file, but both imports have visual issues. The IGES file is missing textures and some parts, while the SLDPRT file has textures applied completely wrong (which I cannot fix using Omniverse’s material applier since the original model has colors applied at a face/feature level). I should also note that the model itself is not consistent in its construction method, as it was made by a group of students who each created their own subassemblies and parts (so the application of materials is at a mix of part, subassembly, and assembly levels). The model was created using Solidworks 2021-2022, not the most recent version. I am hoping to find a solution that is relatively easy to follow, because if there is too much user friction in importing Solidworks parts into Create, it would not be worthwhile for students to use Omniverse in the course. Attached are some images of what the model is supposed to look like and what the imports look like, so I hope that will be of help if I can get some help. Thanks!

Link to viewing images: Omniverse Support Forum Images - Preserving Appearance of Imported Solidworks Model - Album on Imgur

Can you share your USD file? Materials are unlikely to look exactly the same in a CAD system and in Omniverse. The materials in CAD systems is usually much simpler than the material system in Omniverse. That said, depending on the structure you get when you import your CAD, we should be able to come up with a pipeline that makes the materials look really good with little effort from your students.

ME 1670 Omniverse Demo - Mech Import.usd (12.1 KB)

The .usd file is attached. Let me know if you need anything else from me. Thanks!

Hey StrainFlow, just checking that you received the .USD file on your end via my previous message. If not, here is the link again:

ME 1670 Omniverse Demo - Mech Import.usd (12.1 KB)

@agraves36 : Are you able to share the source files? IGES or SLDPRT

Solidworks colors dont come in as complex shaders in OV, sometimes its labled none if its a default color sometimes is a simple color shader. In either case, the colors from solidworks are simply that, just colors. They lack reflectivity, roughness, top coat, refraction etc. We need the shaders to look great in OV so that when we render with path tracing the product/render/scene look ultra realistic. Unfortunately, even solidworks integrated rendering tool, visualize and photoview, even require repainting with better shader to make the model look better/realistic. What i propose is to limit the amount of painting in solidworks, and instead use that time in Omniverse Composer. I have two videos i would like to share with you to help the way you paint/group etc. This will change the way you use composer 100% you have my email from our meeting today, please reach and I will send you a few links. -adamh

Hi Andrew,
Here is a .zip file containing the .IGS, .SLDPRT, and .SLDASM files of the model, as well as images of what the imported models looked like on my end (updated for USD Composer 2023.1):
Georgia Tech ME 1670 Solidworks (57.7 MB)

1 Like

Hey @adamhughes is it possible somehow to get the links you shared with the other user? do you have any other suggestion for video to understand the best workflow between solidworks andOV?

Hi @dqdesign
I can help you more with your inquiry. We do not currently have an OV connector for Solidworks, but not to worry. We have a very solid pipleine already. Just save your SW model as a STEP / STP file and bring it into USD Composer. It will use our CAD Converter and you should get amazing results. For materials I would not try to bring them in directly, but apply far more realistic rtx render materials in USD Composer. Same for lighting, cameras etc.

Just to add a tip that may help. I’ve been using the native CAD converter to go directly from .SLDASM to .USD.

Once you have your converted .USD file of the SolidWorks assembly, run the Material Optimizer in Window>Utilities>Scene Optimizer. Choose the “Add Scene Optimizer Process” then select Optimize Materials. Change the method to “Convert to Color” then run it.

This will remove all of the materials that were created in the conversion and allow you to directly apply omniverse materials to the prims/meshes depending.

Using the search feature in the stage is great when needing to apply the same material to multiple parts, just search and select all of the xforms/prims etc and apply the material.

Just be careful not to apply multiple of the same material. Once you apply one once, switch your materials tab from “Library” to “Current Stage” to ensure you don’t have duplicate materials.

1 Like

thanks @Richard3D for the suggestion! One recurring issue I get with CAD exchanges is losing references when reloading the model after SW modifications. In most cases, the changes applied in the new CAD/rendering tool lose their reference, necessitating a manual reapplication. Does OV Composer offer any tools to address this issue?

You mean you bring in a model, then apply textures, then modify the file in SW, and then when you re-update, it loses all of its textures again ?