Unity Omniverse Export causes crash

I am trying to export a Unity scene to USD (so I can start a live sync) using the Omniverse Connector and it crashes Unity. I have the Omniverse Connector installed. When I select the Omniverse menu and click Export it will think for a bit, then the Unity application closes entirely.

When I open c:\users\username\AppData\Local\Unity\Editor\Editor.log, I see a series of errors:

[Error] [carb] loadPlugin: Library path doesn't exist: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.dictionary.plugin.dll
[Error] [omni.kit.app.plugin] Failed to load core plugin at: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.dictionary.plugin.dll
[Error] [carb] loadPlugin: Library path doesn't exist: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.settings.plugin.dll
[Error] [omni.kit.app.plugin] Failed to load core plugin at: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.settings.plugin.dll
[Error] [carb] loadPlugin: Library path doesn't exist: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.tokens.plugin.dll
[Error] [omni.kit.app.plugin] Failed to load core plugin at: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.tokens.plugin.dll
[Error] [carb] loadPlugin: Library path doesn't exist: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.dictionary.serializer-json.plugin.dll
[Error] [omni.kit.app.plugin] Failed to load core plugin at: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.dictionary.serializer-json.plugin.dll
[Error] [carb] loadPlugin: Library path doesn't exist: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.dictionary.serializer-toml.plugin.dll
[Error] [omni.kit.app.plugin] Failed to load core plugin at: c:/users/username/documents/omniverse/library/unity-connector-200.0.0-beta.1/com.nvidia.omniverse.connector/editor/omniverse/plugins/omnidlg/kit/kernel/plugins/carb.dictionary.serializer-toml.plugin.dll
Loading user config located at: 'C:/Users/username/Documents/Omniverse/Data/connect-sdk/Unity-2021.3/UnityConnector-Alpha/user.config.json'

I removed the Omniverse Connector from Unity and Omniverse Launcher then reinstalled it and I get the same error.

Can you tell us more information?

OS version
OS language
Unity version

I assume this is any scene causes a crash, correct?

Anything else about your scene or workflow that might help us debug this crash?

Also we release Unity connector 200.1 today, could you please try that version and see if you have an issue?

OS: Windows 10 Pro
GPU: Intel(R) UHD Graphics and NVIDIA Quadro RTX 5000 with Max-Q Design
Application: Unity, version 2021.3.24f1
I’m not sure what you mean by OS language?

I updated to the new package version today and it still crashes. The crashes happen both on a Unity project that has game objects imported from USD and also on a Unity project that just has a cube (created from Unity menus) in it.

Repro steps, on a project with no USD assets, where the Omniverse connector is already installed

  1. Launch Unity project (Unity version 2021.3.24f1)
  2. Click “Omniverse” menu and select “Export”
  3. A window pops up to select where to export the USD file.
  4. Enter file information and click “Export.”
  5. Unity thinks a bit, then Unity crashes.

Repro steps, on a project with USD assets imported as game objects, where the Omniverse connector is already installed

  1. Launch Unity project (Unity version 2021.3.24f1)
  2. Click “Omniverse” menu and select “Export”
  3. Some progress bars pop up, Unity thinks a bit, then Unity crashes.

Let me know if there’s any other information I can provide.

Thank you for the complete bug report with reproduction steps! 🌟 Everything looks in order.

I assume you’re not able to share with us privately your project, but if I am wrong please let me know.

Are you exporting to local disk, network share or Nucleus server?

Can you try using Export Selected only from the settings and select a simple game object in your scene and export as USDA file?

Did a USD stage try to write to disk as an empty .USD/USDA file?

Also please try disabling Export Physics to see if that makes a difference.

Do you have any custom (not out of the box Unity) Unity components that you or a 3rd party developed in your project? We’ve had cases were some custom nodes are causing crashes.

I’ll talk to the Devs next week for other ideas on Debugging.

For reference, I asked this question about a Unity project where I imported the contents from a USD file using the USD package. For the sake of science, I created a second project that only contains a camera and a light. Both projects have the Omniverse connector (com.nvidia.omniverse.connector Version 200.1.1) and the USD package (com.unity.formats.usd Version 3.0.0-exp.2) installed.

Are you exporting to local disk, network share or Nucleus server?
When I try to export a scene with imported USD game objects, the export crashes before the window opens to pick the export location.
Originally, when I tried to export an empty scene (camera and light only) to the nucleus server, it would let me select the export location and click “Export” but would crash afterwards and no file was created. Unfortunately Unity has now consistently started crashing when I select “Export” from the Omniverse menu.

Can you try using Export Selected only from the settings and select a simple game object in your scene and export as USDA file?
For the scene with USD objects in it, I checked export selected only, then selected one game object (a cube) and clicked Omniverse → Export. Unity crashes before opening the window to select the export location.

Did a USD stage try to write to disk as an empty .USD/USDA file?
Though I was once able to get the window to come up to select the export location, Unity is now consistently crashing before this window comes up.

Do you have any custom (not out of the box Unity) Unity components that you or a 3rd party developed in your project? We’ve had cases were some custom nodes are causing crashes.
I have the Omniverse connector and the unity USD package installed. For the scene imported from USD, all of the game objects are cubes.

Also please try disabling Export Physics to see if that makes a difference.
Disabling physics results in crashes trying to export in both the USD project and the empty project.

I discovered today that I’m way behind on Unity versions so I updated to version 2022.2.20f1. I created a new project using that version and reinstalled both the USD and Omniverse connector packages (same versions as mentioned earlier). I installed the USD package first and was able to import a USD file as game objects with no errors. When I then installed the Omniverse package, I started getting errors for the USD package.

Unity still crashes when I try to export to USD (Omniverse menu → Export)

@archer-kgraves There are library conflicts with the Unity-USD package (com.unity.formats.usd) therefore I recommend only using one Package at a time to avoid the conflict and crashes.

We will try to debug so both can be active at the same time.

I uninstalled the USD package and Unity still crashed trying to export to USD.

Steps:

  1. Open Unity
  2. Install USD package
  3. Install Omniverse connector package
  4. Import USD file using USD package
  5. Uninstall USD package (Note: this step turns all the game objects pink)
  6. Export Unity project to USD - Unity crashes before the save location window opens.

@kecollins I created a basic project and exported to USD via the connector. This time, I was able to pick the save location before it crashed. How would you like me to send the project so it can be used for debugging?

Steps

  1. From Unity Hub, click “Create new project”
  2. Select 3D Core, version 2022.2.20f1, add a name and click “Create project”
  3. Create a cube game object from the menu.
  4. Install the Unity Omniverse extension from the package on disk
  5. From the Omniverse dropdown, select “Export”
  6. Pick a file location and type in a name, then click “Save”
  7. Unity crashes.

@archer-kgraves
Yes please DM the project and we’ll take a look for debugging.

Thank you very much!