Using Datasmith with Deltagen and VRED

Describes special considerations that apply when you use Datasmith to import scenes from 3DExcite Deltagen or Autodesk VRED.

Windows
MacOS
Linux

To get you up and running, we are providing access to this draft content. Check back soon for updates!

This page describes how Datasmith imports scenes from 3DExcite Deltagen and Autodesk VRED into Unreal Editor. It follows the basic process outlined in the Datasmith Overview and About the Datasmith Import Process, but adds some special translation behavior that is specific to Deltagen and VRED. If you're planning to use Datasmith to import scenes from Deltagen or VRED into Unreal Editor, reading this page can help you understand how your scene is translated, and how you can work with the results in Unreal Editor.

Workflow

Deltagen

Datasmith uses an Export workflow for Deltagen. That means that to get your Deltagen content into Unreal using Datasmith, you need to:

  1. Export your Deltagen scene to an.fbx file using the export feature built in to Deltagen.

  2. Use the Datasmith Deltagen Fbx importer to bring that file into the Unreal Editor. See Importing Datasmith Content into Unreal Engine 4.

VRED

Datasmith uses an Export Plugin workflow for VRED. That means that to get your VRED content into Unreal using Datasmith, you need to:

  1. Install a plugin script for VRED, and use it to export your VRED scene to a .fbx file. See Exporting Datasmith Content from VRED.

  2. Use the Datasmith VRED Fbx importer to bring your exported .fbx file into the Unreal Editor. See Importing Datasmith Content into Unreal Engine 4.

Variants

The Datasmith FBX importer for Deltagen and VRED brings the variants and variant sets that you've defined in your Deltagen or VRED scene into a new LevelVariantSets Asset that it creates in your Content Browser. It also places an instance of this Asset into your Level.

Double-click this Asset to open the Variant Manager UI. You can use this UI to switch between different variants and variant sets while you're working in the Unreal Editor. You can also use a dedicated set of Blueprint functions provided by the LevelVariantSets Actor to switch variants at runtime. You can also customize your variants further, making each variant affect more objects in the Level, or triggering custom Blueprint functions each time it's activated.

It is up to you to decide how the player running your Unreal Project should choose between these variants at runtime, and to write the gameplay code that triggers the appropriate Blueprint functions. For example, you might want to create a UI or a set of menus that players can use to select variants, or to switch variants in response to key presses or other inputs. The Datasmith importer and the Variant Manager do not create these UI or menus for you — they only gives you all the tools you need to create them yourself the way you need for your Project.

Documentation for the Variant Manager is coming soon.

Animations

If your Deltagen or VRED scene contains any animated scene elements, the Datasmith FBX importer brings those animations into Unreal in exactly the same way as it imports variants. You can play, stop and reset these animations in your project at runtime, using a set of Blueprint functions exposed by a different helper class.

As with variants, it is up to you to decide how the player running your Unreal Project should trigger these animations at runtime, and to write the gameplay code that calls the appropriate Blueprint functions. For example, you might want to create a UI or a set of menus that players can use to select animations, or to trigger animations in response to key presses or other inputs. The Datasmith importer does not create any UI or menus for you — it only gives you the tools you need to create them yourself.

About Animation Data

The importer creates a new Animations folder in your Project, next to your Datasmith Scene Asset. In this folder, it creates:

  • A Curves folder that contains animation curve Assets. Each of these Assets contains the raw animation curve for a single scene element that the importer found in your source file.

  • A Data Table Asset that records the animations that the importer found in your source scene. Each row in this table is a record of a single animation that you can enable at runtime. If you need to see the names of the animations that you have available to you, or if you need to verify the details of what scene items each one of these animations controls, you can double-click this Asset to open it up.
    The Data Table panel (1) lists each of the animations in your scene. The Row Editor panel (2) shows the details about the animation that is currently selected in the upper panel.

Each animation is made up of separate tracks, and each track refers to one of the curve Assets the importer created in the Curves folder:

vred-animation-curve-setting.png

Controlling Animations

If your FBX file contains any animations, the Datasmith FBX importer for Deltagen and VRED adds a new instance of one of the following classes to your Level:

  • For Deltagen, BP_AnimationPlayer.

  • For VRED, VREDAnimationPlayer

This animation player Actor is set up automatically with a reference to your animation Data Table, so that it can access all of the animation data that Datasmith imported from your source file. It also has a reference to a root Actor that is placed at the top of your imported scene hierarchy, immediately under the Datasmith Scene Actor, so that it can find the scene elements that it needs to modify when you choose to play those animations. You'll find these settings in the Deltagen or Default (for VRED) section of the Details panel:

Animation player details

Animation Blueprint API

The animation player class is pre-set with several Blueprint functions that you can call at runtime to select which animations you want to play in your Level, and when.

If you edit the animation player Actor, you can find these functions in the functions list in the My Blueprint panel, and drag them into the Event Graph to call them in response to custom events you create:

Animation player functions

To find these Blueprint nodes in a different Blueprint class or a UMG widget that you create:

  1. Create a new variable, and set its type to be an Object Reference to the BP_AnimationPlayer or VREDAnimationPlayer class.
    Set this variable to point to the animation player object you've placed in your Level.

  2. Add a Get node for that variable to your Event Graph, and drag from its output pin to create a new node.

  3. Look in the Call Function category (and also the  Deltagen category if you're working with Deltagen) to find the functions for controlling your animations:

The nodes that you'll use most often are:

Name

Description

Play Animation

Plays the animation whose name matches the name that you pass to the node.

Reset

Resets all animatable Actors in the Level to their default transforms.

Set Animation

Switches the animation currently being run by this animation player.

Update Animation

Evaluates the current animation at the time that you pass to the node, and sets the transform of all animated Actors in the Level to match those transforms.

Get Animation Names

Returns an Array that contains the names of all animations you can pass to the Play Animation node.

The following image shows an example of how these Blueprint API functions could be used within a UMG UI widget. The animation nodes are highlighted.

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback