Epic Games Unreal Engine Omniverse Connector Updates

100.2 Hotfix Release Notes

  • Features
    • Add Unreal Engine 4.26 editor support
      • Note: The export folder dialogs in 4.26 do not refresh Omniverse server folders properly. Browse/create folders from the Content Browser first.
  • Bug Fixes
    • Collision properly exported from stand-alone static mesh asset exports
    • Fix crash when exporting DDS textures when a material uses virtual textures (note, proper VT export is not supported)
    • Fix crash when loading Level with USD actors
    • Fix live-edit of many Cinematic Camera properties
    • Fix binding materials to geometry subsets, honored only if the familyName of subset is UsdShadeTokens->materialBind
    • Remove the “Omniverse USD Sequence+ (usd)” Image Output Format from the Render Movie Settings because it is no longer supported
    • Fix crash when importing USD skeletal meshes. Garbage collection cleans up StaticMeshLOD so some classes needed to be moved to a different module.
  • Changes
    • Avoid exporting TangentX array for skeletal meshes if unnecessary

100.3 Hotfix Release Notes

  • Features
    • Add support for MetersPerUnit on import and export for meshes, shapes, cameras, lights, and stages
  • Bug Fixes
    • Fix crash when editing material caused by Geometry Subset material binding
    • Remove duplicate vertices when exporting UE4 Landscape to USD mesh
    • Fix SkelRoot live edit perf issue
    • Get full data and handle transform exporting from Level Sequence sections even if there’s no key in a shot
    • Avoid crashing when MDL function call creation fails and reports an error
    • SkyAtmosphere material expressions get a constant 0 value when exported as MDL
  • Changes
    • Always create UE4 actor when loading a USD prim (rather than only if it is a model or lacks a parent component). This changes the layout actors, meshes, components, etc in UE4 to be more like the USD stage. Fewer components, more actors
    • Merge multiple camera sequence shots into a new USD camera while still preserving the original shot cameras
    • Support exporting BC6H/BC7 2D textures
    • Replace UE4 material function DeriveTangentBasis with TangentBasis when exporting MDL materials due to the usage of incompatible DDX and DDY material nodes

100.4 Hotfix Release Notes

  • Features
    • Add the optional OmniverseGroom plugin to 4.25 and 4.26. This plugin will export Groom assets as USD Basis Curves.
  • Bug Fixes
    • Fix crash when importing Black_Oak from mounted tree library. Do not attempt to reuse an actor of a different class.
    • Fix a crash when closing the editor when connection to an Omniverse server had previously failed
    • Fix a crash when opening an MDL that is referenced from a path larger than 260 characters (or so) due to Unreal Editor path length issues
    • Fix a crash when exporting a Level Sequence actor with a shot in negative time
    • Fix USD Skeletal Mesh animation importing and playing when triggered from within a Level Sequence
    • Fix an issue where imported USD timesamples that changed visibility on a parent prim did not affect children meshes.
    • Fix an issue where the Landscape default weight map was missing when DDS textures are exported.
  • Changes
    • Make basic USD shapes (sphere, cube, etc) use the same default material that meshes use when no material is bound
    • Don’t allow deletes of ancestral prims from referenced USDs within a stage
    • Support live replacement of mesh prim from point instancer with a UE4 static mesh
    • Workaround issues related to materials that employ Parallax Occlusion Mapping (POM) since this doesn’t translate well to MDL
    • Add support for the Black-body radiation material expression node with MDL
    • Add primitive data (bounding box, etc) from Unreal Engine to MDLs through a custom expression
    • Trigger Skeletal Mesh animation from within a Level Sequence rather then on the actor to ensure that animations with other actors are synchronized.

100.5 Hotfix Release Notes


  • C++ projects can now build properly if the are using the Epic Games Launcher source
  • Fixes for Spotlight and Post Process Volume translation reported by the community
  • Enhanced MDL translation support for more Unreal material expressions


  • C++ projects can now build properly if the are using the Epic Games Launcher editor source

    • While we’re still working on releasing the plugin source, we have included the *.Build.cs files so that C++ projects are supported with the NVIDIA Omniverse USD and MDL plugins. This won’t yet work with the GitHub Unreal Engine source, but it will work with a project based on the Epic Games Launcher editor source.

    • image

  • Fixes for Spotlight and Post Process Volume translation reported by the community

    • We improved the Spotlight to Sphere light translation and added mapping of the PPV’s “Exposure Compensation” to “cm^2 Factor” in the Tone Mapping RTX Settings in Create.
    • image
  • Enhanced MDL translation support for more Unreal material expressions

Complete changelog:

  • Features
    • Add the module *.Build.cs files to allow C++ source project builds using the Epic Games Launcher source
  • Bug Fixes
    • Materials
      • Unify MDL export warnings so they all appear in the same message log whether exporting to local disk or Nucleus server
      • Add a new way to identify if the refraction contained in material expressions can be used for MDL IOR. For example, if texture sampling is used to drive refraction attributes in a material, it will be ignored and replaced with the default IOR constant.
      • Fix 4.26 fog volume MDL exports, the subsurface color attribute was incorrect
      • Fix an issue with a missing override material when exporting instanced meshes
      • Fix an issue where initial material creation and application on a prim in Create did not live-sync to Unreal Engine
      • Fix MDL/texture importing when sampled with address mode (wrap vs. clamp)
      • Fix translation of the Panner material expression node to MDL
    • USD
      • Fix a crash when exporting shots in a Level Sequence that end outside the time range
      • Fix a crash by not allowing an imported Level Sequence actor to be renamed
      • Fix a crash when editing the transform of an instanceable prim by locking the movement of an actor if it’s a descendent of an instanceable prim
      • Fix USD warnings when reading incorrect value types
      • Fix an issue where USD mesh shapes axis changes did not live-sync
    • Lights
      • Fix export of SpotLights to USD SphereLights (credit Alex Jenyon for notifying us of this issue)
      • Fix the import of SphereLights as SpotLights to take the stage’s metersPerUnit setting into account
    • Install
      • Fix the uninstall to only delete files that were installed, not the entire folder where the plugins were installed
  • Changes
    • Materials
      • Add annotation to MDL parameters so that DisplayName, Description, SortPriority, Group, and Range are all exported and visible in Create
      • Add support for the clamped texture sample setting in the texture asset for MDL export
      • Add support for the exporting the PerInstanceRandom material expression node to MDL
    • Other
      • Add a utility Blueprint function to list the contents of a Omniverse server folder (ListOmniverseFiles)
      • Add support for exporting Level Sequence shots with the correct priority into a single Omniverse shot camera
      • Support mapping a Post Process Volume’s “Exposure Compensation” to “cm^2 Factor” in the Tone Mapping RTX Settings in Create
      • Add support for importing USD capsule shapes
      • The defaultPrim on exported stages now have a blank Kind, rather than be set to “group”. This fixes some prim/defaultPrim selection issues in Create.

100.6 Hotfix Release Notes


  • Significant Skeletal Mesh and Animation import and export improvements


  • Fix bugs to allow for easy USD timesample/animation exports of recorded sequences - makes it easy to capture dynamic Blueprint behavior as timesampled data (tutorial coming soon!)

  • Further fixes to material creation live-syncing between Create and Unreal Engine

  • Improvements to mesh caching of USD stages, both during the editor process lifetime (mesh cache) and between editor executions (DDC) - this makes reloading a USD stage significantly faster

  • Added an option to export prims in a stage as Payloads rather than References.

Complete Changelog:

  • Bug Fixes
    • Fix a USD Skeletal Mesh animation import issue where the start time was being ignored (OM-27456, OM-27454)
    • Fix a Skeletal Mesh export issue when morph targets are employed by using LOD RenderData instead of the LOD Model
    • Fix crash when loading skel root with multiple skeleton bindings as the default prim
    • Fix exporting Level Sequence visibility/boolean sections if there’s only one keyframe (OM-27613)
    • Remove live-syncing of Level Sequence changes because of performance issues
    • Fix exporting spawned Blueprint meshes in Level Sequences (OM-27613)
    • Fix exporting Level Sequence with a 3D constraint section that has an infinite range
    • Fix exporting a mesh component as a Xform prim when there’s no actual mesh asset assigned (OM-27790)
    • Fix exporting material with PrecomputedAOMask in DDS mode
    • Fix a material export crash when HLSL text in custom material expressions contain comments near the end of the text block.
    • Fix a material export/import issue where refraction was removed with using the Fresnel node (now default IOR for invalid refraction is set to 1.491 instead of 1.0)
    • Fix another issue where initial material creation and application on a prim in Create did not live-sync to Unreal Engine (OM-26415)
    • Fix attenuation radius scaling (MetersPerUnit) for spot and point lights
    • Fix scaling (MetersPerUnit) for USD cameras, which use fixed units, so no scaling required
  • Changes
    • USD Mesh Importing
      • Meshes are now cached by both the mesh cache and the DDC to speed the subsequent loading of unmodified USD meshes
    • USD Payloads and References
      • Add an option to export props as payloads rather than references (OM-28488)
    • Materials
      • Update MDL Core Definitions to version 2.0.0 and set the exported SDK version to 1.6
      • Add support for exporting sincos() HLSL function in custom material expressions (OM-27401)
      • Workaround HLSL usage of the SampleGrad() function in custom material expressions (OM-27401)
      • Support exporting HLSL vector components as left assignment in a custom expression (OM-27401)
      • Add support for exporting Texture2DSample UE4 material function in custom material expressions
      • Add support for HLSL distance in a custom material expression
      • Prevent MDL export errors when encountering View to World and World to View transforms and emit a warning
      • Update the MDL Core materials to support hair color
      • Add MDL display_name annotations to strip the extraneous “inputs:” from the name in Create
      • Add support for exporting 2D Render Targets to PNG and DDS (OM-28954)
    • Animation
      • Add support for exporting a Blueprint animation with the “Copy Pose from Mesh” graph
        • Note: Only attached parent is supported
      • Automatically export a Level Sequence if there’s only one in the level, previously “Auto Play” had to be checked
    • File Support
      • Use UTF-8 (rather than ANSI) when interacting with the Omniverse Client Library to support all possible characters from the Content Browser
    • Installer
      • Make the uninstaller silent (OM-28140)

101.1 Update Release Notes

  • Highlights

    • Source code included to allow source builders of Unreal Engine to use the plugin.

    • USD Skeletal Mesh import improvements to support more USD hierarchies

      Viking courtesy of Turbosquid, artist Michael Weisheim

    • Fixed Skeletal Mesh material editing and assignment in live-sync

    • Added support for exporting IOR values in MDL with Unreal Ray Tracing Translucency

    • Fixed many custom HLSL material expression issues for MDL export

      (Epic Games Automotive Pack used for testing)

    • Add support for exporting USD Point Instancers from Unreal’s Grass system on Landscape Terrain Actors.

    • Add import and live-sync support for USD DomeLights as UE4 sky sphere actors.

  • Features

    • Include source code in the Launcher download to support GitHub Unreal Engine source builds
  • Bug Fixes

    • Materials
      • Fix an issue where an MDL parameter name might be redefined, causing invalid materials (OM-29128)
      • Fix an issue where deleting a material made in Create while in a live sync session didn’t update in Unreal (OM-28940)
      • Fix missing parameter annotations from parameters in material functions
      • Fix live editing of materials in a skeletal mesh (OM-29530)
    • USD importer will convert mesh from Y-up to Z-up, so cache should be changed if the up-axis is different (OM-29351)
  • Changes

    • Materials
      • Add support for Unreal’s combined material and post process volume ray tracing translucency in transparent MDLs (OM-27969)
      • Prevent duplicate custom expressions in exported MDLs by using a cache
      • Add support for radians and degrees in custom expressions in exported MDLs
      • Add support for mul in custom expressions in exported MDLs (OM-29276)
      • Support exporting additional outputs for custom expressions (OM-29276)
      • Support exporting additional outputs for custom expressions (OM-29276)
      • Support additional float4 constructors in custom expressions (OM-29276)
      • Unifying the material loading for USD skeletal and static meshes (OM-29351)
      • Add support for DistanceToNearestSurface material node when exporting MDLs by using a constant value to generate a valid material (OM-30208)
    • Skeletal Meshes
      • Reorganize the hierarchy of UsdSkelRoot to fix a missing UsdSkeleton transform, also helpful for the multiple skeletons. (OM-29351)
        • Old: UsdSkelRoot → SkeletalMeshActor
        • New: UsdSkelRoot → Actor and UsdSkeleton + UsdMesh → SkeletalMeshActor
    • Landscapes
      • Export Landscape actors with a GeomSubset and MDL Preset for each Landscape component to address issues with the visibility mask (OM-29643)
      • Only export the Landscape visibility mask once, as opposed to once for every layer
      • Add support for exporting USD Point Instancers from Unreal’s Grass system on Landscape Terrain Actors in 4.26 (OM-29803)
    • Lights
  • Add support for importing USD DomeLights as UE4 sky sphere mesh plus a material that supports some DomeLight properties (textures, exposure, intensity, color)

101.2 Hotfix Release Notes

  • Features

  • Bug Fixes

    • Fix missing USD Layer names in the Omniverse Layers tab (OM-13577)
    • Add a missing vector and matrix multiplication support for MDL distilling (OM-30492)
    • Fix MDL importer to handle some custom functions (OM-31735)
    • Fix installer to support a relocated Unreal Engine install from Epic Games Launcher (OM-30765)
    • Fix a vertex color bug on mesh export and weld USD static mesh verts
    • Fix Skeletal Mesh live transform update issues (OM-30696)
    • Fix USD SkelMesh importer to handle Geometry Subsets (OM-31735)
    • Fix a crash due to shared SkelMesh DDC entries between engine versions (OM-31982)
    • Fix an issue where imported animations replay too slowly due to usage of framesPerSecond rather than
    • Prevent OmniAsset in mounts from saving and live editing (OM-31753)
    • Fix folders and assets missing read-only mount flags (OM-31821)
    • Fix a reconnect loop on disconnected Nucleus servers (OM-26381)
  • Changes

    • Add “localhost” as the default in the Add Omniverse Server dialog (OM-2734)
    • Allow “omniverse://servername” in the Add Omniverse Server dialog (OM-2734)
    • Add export commandlet options for payloads and layered sublevels
    • Export World Outliner folders as USD Scope prims (OM-30645)
    • Add an “Export Current Level to Omniverse” option from the menu button (OM-30627)
    • Update the Omniverse Client Library to 1.11.17
    • Add an option in the project plugin settings to save stage changes during Play in Editor sessions (OM-28372)
  • Notes

    • This is the last update to the Unreal Engine 4.24 Connector. Future releases will only contain Connectors for 4.25, 4.26, etc.

102.1 Update Release Notes

  • Features

    • Unreal 4.27 Preview 2 editor support added

    • Add an export option to create a “material override” sublayer and material references (OM-31466)

      • Materials are exported to referenced material USD files rather than embedded in the prop USD files
      • This ensures that changes to a shared material between to props applies to both props
      • This allows a user to save material changes in the MaterialOvers layer and future exports won’t overwrite them

    • Add Omniverse Checkpoints on Save, Export, and Live Toggle (OM-31918)

    • The USD DLLs are prefixed to allow the NVIDIA USD plugins to be loaded at the same time as the Epic USD plugins (OM-31328)

      • Note that some functionality in the plugins might be impacted due to both running at the same time
    • Add support for http/S3 references to allow for Omniverse skies, materials, and other assets from Create (OM-31892)

    • Add support for importing materials generated by the MDL Material Graph in Create (OM-31608)

  • Bug Fixes

    • Add version control to USD DDC to prevent crashes when importing the same USD SkelMeshes with different editor versions (OM-31982)
    • Add MetersPerUnit stage value to DDC cache to prevent incorrect scale on importing
    • Fix invalid MDLs in Create when exporting using the Core library dependencies
    • Fix USD Domelight import material by normalizing the reflected vector to prevent scaling
    • Fix bounds for USD SkelMesh animation imports (EuclidVR sample)
    • Fix live editing material from the USD Skel which mixes with Mesh and GeomSubset
    • Fix importing tangent_space_normal_texture function from base module to fix normals on OmniPBR (OM-33899)
    • Fix check() when importing Automotive Materials Pack M_Opaque_Master (OM-33666)
    • Fix a HUGE memory leak when exporting USD stages to Nucleus servers (OM-20218)
  • Changes

    • Unreal 4.24 is no longer supported
    • Live Edit will automatically be disabled when opening/importing a USD stage (OM-31918)
    • Add support for HLSL clamp conversion to MDL clamp
    • Add support for importing/exporting “unpack integer as float function” (OM-30252)
    • Add support for converting hlsl rgb per-component operation for the variable and function to mdl (OM-30252)
    • Update MDL SDK to 2021.0 (344800.2052): 01 Jun 2021
    • Support loading specific material from the core material lib in preparation for material node graphs (OM-31608)
    • Omniverse Client Library update to 1.13

102.2 4.27 Hotfix Release Notes

Note, this hotfix is only for the 4.27 Preview 3 Unreal Editor. Epic Games recently updated from Preview 2 to Preview 3 and our 102.1 release isn’t compatible, so we updated it.

  • Features

    • Updated build to support Unreal 4.27 Preview 3 (Preview 2 is no longer supported)
  • Bug Fixes

    • Fix the result of MDL lerp expression when the input is constant (OM-34457)
    • Adjust spot and point light exporting (OM-34234)
    • Fix the incorrect relative texture path when exporting objects (static mesh/skeletal mesh) to local disk
    • Fix crash when loading transform_vector_from_tangent_to_world() and transform_vector_from_world_to_tangent() from Ue4Function mdl
    • Clamping the texture coordinate index if exceeding the number of texture coordinates: Omniverse MDL used the 3rd and 4th uv sets as vertex color, so out of bound coordinates will cause the issue (OM-34912)
    • Add notification when the filename on the Omniverse is too long (OM-31735)
  • Changes

    • Setting max roughness to 1.0 which is 0.3 by default in Create to match the roughness attribute of UE material (OM-34749)
    • Update Core material libraries to 1dcbfb85 for OmniSurface

102.3 Hotfix Release Notes

  • Bug Fixes
    • Separate MDL functions which require MDL 1.7 to a new core template which will be imported as needed. The main Ue4Function template maintains MDL 1.6 to compatible with older Kit SDK versions (OM-35152)

      • This specifically addresses the issue where Machinima 2021.1 shows red materials with Unreal 102.1 and 102.2 exports

    • Fix a crash by adding error checking for the custom mdl function translator

    • Avoid repeatedly copying template MDL files when exporting materials

  • Changes
    • Add option to decide if exporting preview mesh as well when exporting the animation sequence (disabled by default)
    • Add support for HSLS exp/exp2 to MDL math functions

102.5 (4.27 only) Hotfix Release Notes

  • Features
    • Updated build to support 4.27.0 Release
    • Add support for importing the OmniSurface MDL materials (OM-34790)
    • Add support for exporting a material with virtual textures (OM-35721)
  • Changes
    • Add an export option to disable exporting Landscape Grass to reduce memory usage
    • Add support for exporting materials that use a Desaturation material expression node (OM-35720)

102.4 (4.27 only) Hotfix Release Notes

  • Features
    • Unreal 4.27 Preview 4 editor support added (Preview 3 support dropped)
  • Bug Fixes
    • Fix Lerp material expression node losing inputs with a scalar parameter caused by OM-34457 (OM-35242)

102.6 Hotfix Release Notes

  • Features

  • Bug Fixes

    • Initialize static mesh render data outside of OmniverseUSD module to avoid crash (OM-36271)
    • Support exporting cameras created from Default Pawn and spawned actors when recorded in a sequence (OM-34197)
      • Also add basic support for the spring arm component as a fixed joint to suspend a camera (without any collision avoidance)
    • Fix MDL custom annotation by unmangling paths
    • Fix strange triangulation due to world normal usage in Unreal materials when exporting as MDL (OM-34110)
    • Reset EV100 to 0 when the luminance is 0 to prevent the post process from overexposure
  • Changes

    • Add support for referencing textures, materials, and USD stages with a checkpoint URL (file.png?checkpoint=2) (OM-34630)

    • Allow a material to load for a GeomSubset that doesn’t define the “familyName” attribute set to “materialBind” - still emit a warning

    • Add support for the USD Preview Surface “Transform2d” function

    • If USD camera focus distance is zero use the setting from post-process on import (OM-35714)

    • Export EXR files as 16 bit textures since they’re now supported by Create