The Twinmotion to Unreal Engine workflow provides an easy way to bring your Twinmotion projects into Unreal Engine, where you can take advantage of powerful tools and features and take your designs even further.
Working with an imported Twinmotion project is also an excellent way to begin learning how to use Unreal Engine. With a project you are familiar with, you can get a head start on understanding and experimenting with Unreal Engine’s user interface and features.
For in-depth information on Unreal Engine and how to use it, see the Unreal Engine documentation and the learning content available in the Epic Developer Community.
About the Twinmotion to Unreal Engine Workflow
Export your Twinmotion project to the Datasmith format using the Export to Datasmith file command in Twinmotion, in either the Standard or Optimized mode. Each of these modes creates a
.udatasmith
file and a folder that contains all the assets for your project.Import the
.udatasmith
file and assets into Unreal Engine using the standard Datasmith Import workflow in Unreal Engine.
Once your project is imported into Unreal Engine, you can continue to reiterate your design in Twinmotion and re-import the updated versions into Unreal Engine using the Datasmith Reimport Workflow.
You can also use the Datasmith Visual Dataprep system in Unreal Engine to create visual import recipes for the elements in your scene and build common data preparation tasks. See Dataprep Import Customization in the Unreal Engine documentation for more information about this workflow.
For more information and step-by-step instructions on how to bring your Twinmotion scenes into Unreal Engine, see Twinmotion to Unreal Engine Workflow.
Standard and Optimized Exports
When you import a static 3D asset (object) into Unreal Engine, it is converted into:
A Static Mesh Asset that appears in the Content Browser.
A corresponding Static Mesh Actor that appears in the Viewport and Outliner.
Static Mesh Actors are simple placeholders that display Static Meshes. Each Static Mesh Actor points to a Static Mesh.
When you import an object into Unreal Engine, each type of material applied to your object is converted to a Material Asset in the Content Browser.
When you import a Datasmith file into Unreal Engine, you can choose between Standard or Optimized mode. Depending on the export mode you use, the number of Static Mesh Assets and Material Assets created in Unreal Engine varies.
For example, when you import a Twinmotion scene that contains one object with one material applied to it, Unreal Engine creates one Static Mesh Asset and one Material Asset.
If you make a copy of the object in Twinmotion:
In Standard mode, an additional Static Mesh Asset and Material Asset are created.
In Optimized mode, additional Static Mesh Assets and Material Assets are not created; the copied object reuses the same Static Mesh and Material as the original object.
If you create a new object and apply the same material from the Materials dock to the object:
In Standard mode, an additional Static Mesh Asset is created, but not an additional Material Asset. The new object reuses the same Material Asset as the original object.
In Optimized mode, the new object uses the same Static Mesh and Material as the original object. Additional Static Mesh Assets and Materials are not created.
Additional Static Mesh Assets and Material Assets are never created for instances of objects.
Using the Optimized mode to reduce the number of Static Mesh Assets and Material Assets improves the performance of Unreal Engine projects, as it results in less memory consumption and higher frame rates. However, keep the following points in mind when using Optimized mode:
Exporting in Optimized mode can be significantly slower than exporting in Standard mode, since every object and material in the scene needs to be analyzed to determine if it can reuse an existing Static Mesh Asset or Material Asset in Unreal Engine.
Reusing Static Mesh Assets and Material Assets can lead to situations where making a change on one Static Mesh or Material in Unreal Engine changes all the Static Mesh Actors that point to them, even if you did not intend to do so. Before modifying a Static Mesh Asset or Material Asset, make sure they are only displayed by the Static Mesh Actors you want to modify.
How Datasmith Translates Twinmotion Content
This section describes how Datasmith translates the Twinmotion features of projects you bring into Unreal Engine.
Geometry
Twinmotion uses 3D geometry imported from:
Other design applications (such as Archicad, Rhino, Revit, and SketchUp Pro)
Twinmotion cloud libraries (Twinmotion, Quixel Megascans, and Sketchfab)
Unreal Engine translates 3D geometry from Twinmotion into Static Mesh assets.
In Twinmotion, you can view your assets in a hierarchical tree view in the Scene graph. In Unreal Engine, your assets are translated as Actors and Static Mesh Actors in the Outliner panel.
Starting Ground and Background Context
The Starting ground and background context (Ambience > Env > Horizon) are supported.
Limitation: The Starting ground is not at the correct height.
Vegetation
Assets from the Vegetation category in the Library are supported, and wind is supported on leaves and grass.
Supported: Landscapes, Trees, Bushes, Grass and flowers, Detail grasses, Rocks, and Misc.
Limitations:
Twinmotion season settings on vegetation may not fully translate to the Datasmith format, but you can correct this with the controls for Seasons in Unreal Engine.
Landscapes are imported but they do not display correctly due to a Datasmith limitation. For information on how to resolve this issue, see Create a New Landscape with the Heightmap and Materials.
Painted and Scattered Vegetation
Vegetation that is added to a scene using the Paint or Scatter tools is represented as a Hierarchical Static Mesh (HISMS) in Unreal Engine.
Metadata
All the items in your Twinmotion scenes that are exported contain metadata you can view in Unreal Engine.
Unreal Engine also creates Tags for Actors that have Twinmotion Global Unique Identifiers (GUIDs). This can be useful when using the Datasmith Visual Dataprep workflow.
Materials
Similar to Datasmith workflows in design applications such as 3ds Max or Revit, textures are extracted from all Library materials applied to objects in the scene and exported to the Datasmith assets folder.
Supported: Car paint, Emissive, Fabric, Foliage, Glass, Standard, Subsurface, and Water material types.
Partially supported: Adobe Substance (SBSAR) materials (Opacity map is not always exported with certain textures).
Currently not supported: Video materials and two-sided materials.
Limitations:
Standard and metallic materials may appear red after importing on a macOS.
Materials on certain buses from the Library > Vehicles > Buses category are imported as one-sided materials instead of two.
UV rotation on materials is not translated correctly.
The helicopter and planes from the Library > Vehicles > Aircraft category have missing materials.
Normal texture maps on Quixel Megascans assets are not imported correctly.
In certain cases, materials are not applied to geometry. When this happens, an Invalid Lightmap Settings error is displayed in the Viewport.
Workaround: Save and reopen the project in Unreal Engine. If this does not resolve the problem, in the Static Mesh Editor change the Light Map Coordinate Index of the incorrectly displayed elements from 2 to 1.
Objects
Supported: Home, City, Primitives, Decals, Water, and Doors.
Currently not supported: Particles and Sounds.
Quixel Megascans Assets
Supported: 3D Assets, 3D Plants, Surfaces, and Decals.
Currently not supported: Normal texture maps on Quixel Megascans assets are not correctly imported.
Sketchfab Assets
Sketchfab assets in all the categories are supported.
Characters
Supported: Posed humans, Cutout, and Animals.
Currently not supported: Groups and Animated humans.
Limitation: Goats in the Animals category are imported with the same texture.
Posed humans
Posed humans are translated to Static Meshes, and their materials are preserved.
Character Cutouts
Cutouts from the Library > Characters category are translated to Static Meshes and face the camera correctly from all camera angles.
Limitations:
The resolution of Cutout characters is low.
The shadows on Cutout characters will not render accurately if you use Ray Tracing features such as Raytraced Shadows or the Path Tracer in Unreal Engine.
Solution : Select the Cutout characters and enable the Evaluate World Position Offset in Ray Tracing setting.
Character and Bicycle Paths
Currently not supported: The accessories of Character paths (such as books and mobile phones) are imported as Static Meshes, but the characters themselves are not imported. Bicycle paths are not imported at this time. We recommend hiding Character and Bicycle paths in the Scene graph before exporting a project to the Datasmith format.
Lights
Lights in Twinmotion scenes are translated to lights in Unreal Engine. The name, position, shape, IES profile, intensity and color of lights are imported.
Supported: Omnidirectional light, Spot light, Neon light, Area light, and IES 01 to IES 30.
Currently not supported: Compressed objects with an IES light texture are not supported.
Limitation:
Shadow casting, haze, and other visual effects are not imported.
Lights and Emissive Materials
Lighting conditions and exposure values in your Twinmotion project can change from the setup in your Unreal Engine project. This might result in materials with emissive properties or lights appearing either darker or brighter between Twinmotion or Unreal Engine. This happens because Unreal Engine displays materials and lighting through a different camera lens and exposure than the ones in your Twinmotion project.
Light Baking
To obtain good light baking results in Unreal Engine, the lightmap UV coordinates must be well defined. Although it is possible to automatically generate them in Unreal Engine, for optimal results these coordinates are usually carefully laid out by hand in modeling applications prior to being imported in Unreal Engine.
As Twinmotion does not rely on lightmapping to calculate global illumination, the UV coordinates required to store lightmapping results are not present on geometry.
Solution: In Unreal Engine, you can either unwrap UVs directly with the Lightmap Auto-Generation tool, or create lightmap UVs in the Modeling Editor mode. While you can use light baking with these methods, it can be time-consuming and you must repeat the process each time you reimport your scene into Unreal Engine. Instead, we recommend using the Lumen Global Illumination and Reflections solution in Unreal Engine, which gives similar results but does not require lightmap UV mapping.
Vehicles
Static vehicles are translated to Static Meshes in Unreal Engine. Imported animated vehicles such as the Animated Track Loader in the Library > Vehicles > Construction machines category are not animated due to a technical limitation of the .udatasmith format: animated vehicles are based on Skeletal Meshes which are not supported by the Datasmith Software Development Kit (SDK).
Supported: Cars, Buses, Aircraft, Two-wheeled, and Trucks.
Currently not supported: Boats and Construction machines.
Limitations:
Animated vehicles are not animated.
Helicopters and planes in the Aircraft category have material errors.
Vehicle Paths
Each vehicle that moves on a Vehicle path in Twinmotion is translated to a Static Mesh.
Limitation: Vehicles on Vehicle paths are not animated in Unreal Engine.
Tools
Supported: Cycloramas, Virtual Production > LED wall, and Animators.
Currently not supported: Sections, Notes, Reflection probes, and the Measure tool.
Limitation: Assets that use Translator or Rotator Animators (Children Roundabout, Industrial Gate, Lifting Barrier Rotating Door, Retractable Bollard, and Sliding Door) are imported but not animated.
Images
Images created inside the Media dock in Twinmotion are translated to Cine Camera Actors in Unreal Engine.
The position and focal length of the camera, and the name and aspect ratio of the image are imported. Exposure, lighting, and other visual effects are not imported and use the default settings in Unreal Engine.
Decals
Decals in Twinmotion are translated to Decal Actors in Unreal Engine. The materials and visual effects are preserved.
Limitation: The scale of decals is not always maintained.