Live Workflow Developer FAQ¶
The Omniverse USD Resolver uses the Omniverse Client Library to perform all communication with Nucleus servers. The OmniLive has been modified in Client Library 2. This FAQ is designed to answer questions regarding these changes.
If your connector is using Live Workflow functions they must be upgraded to use the new Live Workflow functions in Client Library 2 as the OmniLive user experience has changed. Client Library 1.x can Live Sync changes on a .usd layer, while Client Library 2.x can only Live Sync changes on a .live layer and these .live layers presented to clients as USD
Do we need to upgrade to the new Client Library?¶
No you are not required to upgrade but it is recommended. Client Library 2 is backward-compatible with Client Library 1. The only breaking change to the Client Library are the Live functions. Please update to avoid any potential issues.
How long will client library 1 be backward compatible with Nucleus?¶
Most likely for a period of one year from this publication - July 2023.
When is Client Library 2 going to production?¶
Create 2022.2, View 2022.2, and an update to Connect Sample are scheduled to release during Q3 2022. These releases will include Kit v103.5 and Client Library 2.x and the usd-resolver.
What are the benefits to using Client Library 2?¶
The Client Library and usd-resolver have been separated into their own libraries.
The Client Library no longer depends on any USD.
The USD-Resolver can be compiled against a number of USD versions.
Guides users into a Non-destructive Live workflow.
This is due to only .live layers supporting replication via Nucleus.
The Client Library is more efficient in how it handles deltas on the .live layer. Allowing multiple changes (to a single layer) by multiple users during the same live session.
What is changing with Live Workflow?¶
New Session management system: Create and Join collaborative Live sessions with multiple users from multiple apps.
Live Session deltas are now targeted to a special .live layer instead of the original usd layer.
Live Sessions are now more restrictive to ensure they are non-destructive.
An Owner is enforced by Clients.
When sessions are Ended and Merged notifications are sent to all clients to ensure participants to ensure data validity.
When ending a Live Session, the Owner will be presented with several merge options:
Merge to corresponding layer: merge changes to root layer and clears data from .live layer.
Merge to a new layer: merge changes to a new layer and clears data from .live layer.
Pick an existing layer to merge to: merge changes to a selected layer and clears data from .live layer.
Do Not Merge: leaves data where it is; does not clear data from .live layer.
Where can I get started?¶
We will release Connect Sample v200 Q3 2022. This update will include code samples with both Python and C APIs along with Code documentation and developer documentation for upgrading to Client Library 2 and an introduction to the new Live functions and Live Workflow.
NVIDIA USD Library Requirements?¶
Client Library 2 is now USD-agnostic, which eventually will allow developers to use a number of USD libraries they want (rather than nvUSD). In the short term we are packaging one USD version nv20.08 with Connect Sample.
We are actively developing functionality to allow developers to download more supported USD versions and eventually build the Omniverse USD Resolver against their own version of USD.