Epic Games Unreal Engine 4 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
4 Likes

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

Highlights

  • 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

Details

  • 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

    • We added support or fixed these Unreal Engine material items:

      • PerInstanceRandom node
      • Panner node
      • FogVolume
      • Override material for instanced meshes
      • Live-sync with material creation on USD shapes
    • Added support for displaying friendly names and grouping MDL parameters

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.
2 Likes

100.6 Hotfix Release Notes

Highlights

  • Significant Skeletal Mesh and Animation import and export improvements

    UE4SkelMeshLODRenderData

  • 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
      SkelMeshLiveEditMaterials

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

    • 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.
      DomeLightSync

  • 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
      timecodesPerSecond
    • 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)
      image
    • 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.