Layers

Layers provide a convenient way to organize and manage your scene while also providing a comprehensive live workflow. At their core, Layers are nested USD files with histories of their own. Added on top of this however is a live workflow allowing users to set each nested layer to be edited and viewed live. For example, lighting, content, and the environment can each exist on seperate Layers (nested USDs). As things are edited within the Layers, deltas (aka: changes) are stored allowing you to manipulate anything in the scene non-destructively. Additionally, those Layers can be set to live on an individual layer basis which will show updates in realtime of other users working on either the layer directly or within the same root usd.

Using Layers (Video)

Understanding Layers

Layer Ordering

The effect of Layers (deltas, models and otherwise) are considered in a bottom up fashion. The layer above takes the priority over the layer below on any alterations. You can move Layers up and down freely to give priority.

Layer Types

Layer Types consist of 3 types and are denoted by icons in the layer view. These types are Native, Reference, and Delta.

Layer Type

Layer Icon

Description

Native

icon_native

Native denotes that the layer entity is local to the USD being edited. This means that the mesh, light etc is
embedded in the USD layer directly. For example creating a mesh in a layer will create a native type within that layer
for the mesh. The icon will resemble the type of asset it is.

Reference

icon_reference

Denotes that the file is un-editable directly as it is not native to the USD. Instead it is a link to a resource
existing elsewhere on your Nucleus. Any assets dragged in from the content browser will create a reference for the
referenced mesh. An asset that is a reference will be overlaid with the reference icon.

Delta

icon_delta

Deltas are changes to a layer that get recorded when affecting any assets lower in the layer order then themselves.
These changes do stack and are non destructive. This means that changes on a preceding layer then altered further on
a higher order layer will show the results of both changes. For example, if a lower layer moves an object and a
higher layer changes the material, both the translation and the material change will be visible. An item that has
received a change will be overlaid with the delta icon.

Authoring Layer

When authoring in Layers, it is imperative to set the layer you wish to affect with changes. When set, the layer choosen is called the authoring layer and is denoted in the Layers panel next to the current authoring layer. By default, this will be set to the root layer (highest priority) but can be changed by double clicking the layer you wish to author.

../_images/kit_layers_layerpanel_authoring.png

Layer Panel

The layer panel controls all Layers interactions and should not be confused with the stage panel though there is some visual overlap. The layer panel not only shows the items in the scene but also shows where meshes were created, changed or referenced. The Stage on the other hand only shows objects in the scene.

../_images/kit_layers_layerpanel_overview.png

2. Save Layers

The save column allows users to save layers individually while the header icon allows users to save all layers in a single click. Whenever a change is made in a layer and it has not yet been saved, the icon will change colors to blue. If the save icon is grey, this means that the layer(s) are already saved.

../_images/kit_layers_layerpanel_saving_layers.png

3. Local/Global Visibility

Local and global views is specifically useful to multi-user workflows. As a file can have many people working on it simultaneously, these views allow you to hide Layer independantly from what the rest of the users will see. When visibility is changed under Local, visibility only changes for the user. When visibility of a Layers is changed under Global, all users in the file will see the change.

To change from Local and Global View, press the L or G buttons respectively. To change a specific layers visibility globally or locally, enable or disable using the Eye icon of the layer in the respective column.

Option

Effect

Global Visibility

Hides and un-hides the specified Layers from all users.

Local Visibility

Hides and un-hides that Layers from the current computer/user.

4. Live

The live controls are managed in the live column. Each layer can be set to live individually while the header icon allows the user to toggle all on, toggle all off, or all always on.

Option

Effect

All Always On

Enabling “All Always On” will result in all layers being live at all times until disabled.

Toggle On

Toggles all layers to be live. Inidividual Layers can then be toggled off by selecting the live icon for that layer.

Toggle Off

Toggles all live off for all layers. Inidividual Layers can then be toggled on by selecting the live icon for that layer.

Referenced Files (video)

5. Layer Options

The layer options give access to optional features for layers.

Option

Effect

Show Layer Contents

Toggles the display of all content generated within layers (deltas, native assets, and references).

Show Session Layer

Toggles the display of the Session Layer.

6. Import SubLayer

Imports any USD files as a SubLayer in the current USD file.

Important

When a USD is imported as a SubLayer, actions done are committed directly to the SubLayers FIle. This can be very dangerous in practice and should be used cautiously. For example, if a mesh is native to the SubLayer and it is deleted, the mesh is deleted from the USD SubLayer file and is permanent. This can result in lost work. As a best practice, it would be wise to instead create a new SubLayer then reference the usd by dragging it in from the file browser. This method will result in changes being considered as deltas on the Layers USD leaving the referenced USD file untouched.

7. Create SubLayer

Creates a new layer in the stage. When clicked will request a location for saving the layer. Once complete a new layer will be appended to the layer list.

8. Delete SubLayer

Removes the current Layer.

Note

If removed, a layer can be brought back by using “import SubLayer” and selecting the removed layer from its saved location.

9. Lock Layers

Layers can be individually locked by selecting the lock icon for the respective the layer. This will restrict the selected Layer from being edited by any other users but is still editable in by the current user.

Merging Deltas

If deltas exist on a layer and you would like to commit those changes permanently, the delta can be merged by dragging it to a layer where deltas already exist for that entity or to the layer where it was originally created.

../_images/kit_layers_layerpanel_merge.png

Right Click Menu

In the layer panel additional functionality can be found for a specified Layer by right clicking and invoking the contextual right click menu.

Option

Effect

Set Authoring Layer

Set the selected Layer to the actively edited layer. All changes will affect this Layer until a new authoring layer is selected.

Remove Layer

Removes the current Layer. If removed, it can be brought back by using “import SubLayer” and selecting the removed layer from its saved location.

Create Layer

Creates a Layer within the selected layer.

Merge Down One

Merges all changes, meshes and deltas into the Layers beneath the selected Layers.

Save As

Allows a layer to be saved with a new name and/or location.

Note

This Save As action does NOT replace the existing Layers with the newly saved one.