Search code examples
3dunity-game-enginefbxcinema-4d

How to properly export a 3D model to Unity from Cinema 4D R16. Model changes when imported to Unity


I am having trouble how to properly use a 3D model I have created from Cinema 4D R16 to Unity.

The model looks fine on render view from Cinema 4D but looks distorted on Unity (imported as .fbx), and the eyes are missing their colors.

I chose .fbx with the ff settings checked:

  • FBX version 7.4

  • General: Lights / Splines

  • Animation: None

  • Geometry: Normals

  • Additional: Textures and Materials / Embed Textures

There is a simple keyframe animation for moving of the eyes. I also tried exporting to .fbx without the animation but the model is still distorted.

Below are photos from rendered view and when the model is imported to Unity.

Images:

Rendered view from Cinema 4D

Imported to Unity - dragged and dropped the .fbx to the project


Solution

  • Unity will natively import a file from C4D, just place the .c4d file in the project's Assets folder. Open up Unity and the scene will be imported automatically and you'll see it in the Project View. Then, drag it from the Project View into the Scene View.

    Plus, when you use this method you Unity will automatically update the file whenever you save a changed .c4d model.

    Unity will import:

    • All objects with position, rotation, and scale. Pivot points and Names are also imported.
    • Meshes with UVs and normals will be imported.
    • Materials with Textures and diffuse colors. (Multiple materials per mesh)
    • Animations with FK (IK will need to be manually baked).
    • Bone-based animations.

    Note: Unity currently does not import Point Level Animations. You'll have to use Bone-based animations instead.

    This does require that you have Cinema 4D on the same machine as Unity.

    To maximize the import speed got the C4D preferences(Edit->Preferences) and uncheck Embed Textures from the FBX 6.0 preferences.