Overview
The explanations on this page concern the direct exchange of data, whereby projects opened in Cinema 4D can be sent directly to the Unreal Engine. Changes in Cinema 4D can be synchronized and thus immediately made visible in Unreal. Information on the classic import of saved .c4d scenes into Unreal is described on this page.
If the plug-in components described here for the Direct Link function are installed in Cinema 4D and the Unreal Editor, projects opened in Cinema 4D can be sent directly to Unreal. Changes made in Cinema 4D can then be synchronized and thus also made visible in the Unreal Editor without having to manually save the Cinema 4D scene each time. Proceed as follows:
For this data exchange, you can also make some default settings, which you can call up by clicking on the cogwheel symbol behind Direct Link Sync:
After confirming these settings via the OK button, the scene is also saved for exchange with the Unreal Engine.
A selection dialog will open in which all Cinema 4D projects marked for the Direct Link are listed. In the Source column you will find the names of the Cinema 4D projects, which makes it easier to select the correct scene if there are several from which to choose. Click on the desired row and then on the Select button. If scenes are missing from the list, you can click on the Refresh icon in the bottom left-hand corner of the selection window to update the list.
After selecting the desired Direct Link project, you will be asked for the placement of this data within your Unreal project structure and the options for the file transfer will be displayed (see figure below). After pressing the Import button, the corresponding data will be loaded. You can find out more about these import settings below.
If you want to update the data in Cinema 4D, make the desired changes there and then call up Direct Link/Direct Link Sync again in the Extensions menu. This automatically updates the data in the Unreal Editor.
The following options and settings are available when loading a synchronized Direct Link file:
Geometry |
Objects and their geometry will be imported as static meshes. Note that only the front side of the polygons is visible in Unreal by default. To make both polygon sides visible, the option for Material Property Overrides>Two Sided must be activated in Unreal for the material of the geometry. |
Materials & Textures |
Materials and the textures used in them will be loaded. The resolution used for baking the material properties in bitmap textures can be selected separately in the Node Material Textures group. Please note that not all native Cinema 4D shaders and Nodes can be baked and imported as textures. You should therefore create all parametric material information as textures yourself before saving in Cinema 4D, if possible. Redshift Node Materials are also supported (no XPresso materials), although no displacement settings will currently be adopted. |
Lights |
The light sources of the Cinema 4D scene will be imported as Light Actors. Please note that not all configuration options are also available in Unreal. For example, Area lights can only be rectangular, disc-shaped, cylindrical or spherical and are then generally imported as rectangular area lights in the Unreal Editor. The use of several infinite light sources can also be problematic with regard to shading in the Unreal Engine. |
Cameras |
Imports the Camera objects of the Cinema 4D scene as Cine Camera Actors. Redshift cameras are also supported. You can find further information here. |
Animation |
Animated properties will be imported. This includes, for example, the classic Position, Angle and Size keyframe sequences, but also the render visibility of objects to animate their visibility. Animations implemented using scripts or XPresso circuits, for example, must be baked as keyframes before being saved in Cinema 4D. Animations in which the number, sequence or position of surface points change can be imported as a Geometry Cache. This also applies to simulations that have been saved as a cache. The principle corresponds to the use of the Allembic storage format, in which animations are saved image by image. You will find a separate option for this in the Geometry Caches group, which can also be used to import PLA keys, for example. |
By activating the Lights option mentioned above, light sources from Cinema 4D projects can also be transferred to the Unreal Editor. This also applies to Redshift light sources, although only these types are supported:
Since Lumen and Lux are used in the Unreal Engine as units for determining the light output and these are dependent on the size of a light source or a light cone, light brightnesses and intensities must be converted.
The following applies to Point lights (RS Point Light):
Redshift unit | Conversion to Unreal |
---|---|
Image | Intensity (lm) = Intensity / pi |
Luminous Power | Intensity (lm) = Intensity |
Luminance | Intensity (lm) = Intensity / (pi * 1000) |
Radiant Power | Intensity (lm) = Intensity * LuminousEfficacy |
Radiance | Intensity (lm) = Intensity * LuminousEfficacy / (pi * 1000) |
The same applies to Spot lights (RS Spot Light) as to Point lights, except that the light intensity is also influenced by the aperture angle of the Spot light:
Intensity (lm) = Intensity * (1 - cos (angle of the light cone) * 0.5)
The following applies to Area lights (RS Area Light):
Redshift unit | Conversion to Unreal |
---|---|
Image | Intensity (lm) = Intensity * Area / 2pi |
Luminous Power | Intensity (lm) = Intensity * Area |
Luminance | Intensity (lm) = Intensity / (pi * 1000) |
Radiant Power | Intensity (lm) = Intensity * LuminousEfficacy * Area |
Radiance | Intensity (lm) = Intensity * LuminousEfficacy / (pi * 1000) |
The following applies to infinite lights (RS infinite Light):
Redshift unit | Conversion to Unreal |
---|---|
Image | Intensity (lux) = Intensity * 500 |
Luminous Power | Intensity (lux) = Intensity * 200 |
Luminance | Intensity (lux) = Intensity / 10 |
Radiant Power | Intensity (lux) = Intensity * LuminousEfficacy / 17 |
Radiance | Intensity (lux) = Intensity * LuminousEfficacy / 17 |
Redshift cameras contained in Cinema 4D projects can also be transferred. The following settings will be applied:
Min Lightmap Resolution |
Unreal can use existing or self-calculated UV maps on the objects to bake lighting information (so-called Light Maps). As a result, the display of static objects under static lighting can be accelerated and implemented with higher quality. This setting defines the smallest possible resolution for one of the resulting UV islands. In general, square UV-Map tiles will always be created. |
Max Lightmap Resolution |
This is where you can define the maximum resolution for the creation of light maps. Please note that you can also adjust this value individually for each Geometry Actor at a later date. You should therefore use an average value for the import. |
Generate Lightmap UVs |
Activate this option so that Unreal itself creates UV mappings of the geometry during import, which can be used to bake Light Maps. If the imported objects already have the appropriate UV processing that is also to be used for baking the Light Maps, this option can remain disabled. This not only shortens the time required for importing, but also saves memory, which would otherwise be required for the additional UV coordinates. Existing UV coordinates, which are used for assigning materials, for example, will be retained in any case. |
The Datasmith format can also be used to exchange data between Cinema 4D and Unreal. To do this, prepare your data in Cinema 4D and save the project there normally, e.g. via Save Project as... in the File menu. If external assets are used, such as textures in materials, you should use Save Project With Assets ... for the first save instead, which you can also find in the File menu. All assets used will be gathered and saved together with the project file in the same folder. This minimizes the risk of losing the links to your project if you move or delete asset files on your computer, for example.
You can then call up Export to File (*.udatasmith) under Extensions/Unreal Direct Link and save a Datasmith file for the Unreal Engine (see illustration above). This file can be loaded directly in the Unreal Editor via the quick access menu by calling Datasmith/File Import.... The options for importing such a file have been described in detail here for the Datasmith format.
Here, too, there are some presets available for the export, which you can find via the cogwheel icon behind the Export to File (*.udatasmith) command. These options are identical to those of Direct Link Sync:
After confirming these settings via the OK button, the scene is also saved in the Datasmith format of the Unreal Engine.
Alternatively, Cineware for Unreal also allows the Unreal Editor to open Cinema 4D files directly (.c4d). This type of cooperation has also already been described here.