How 2D-3D Integration Works

Harmony allows you to import 3D models and reposition them in Harmony and animate them over time.

Importing a Reference Model

When working in Harmony, the first thing to do is import a reference model. This model is what will be represented in the Camera view OpenGL mode. Animators can reposition this model, animate the camera, and interact with it. Although several formats are supported, FBX (*.fbx) is the recommended format as this will allow you to embed textures for nicer looking reference models.

Other supported formats are Alembic (*.abc), (*.osb), Autodesk 3ds Max (*.3ds), Object (*.obj), and Collada (*.dae). The support of the Collada format enables artists using SketchUp to export to Harmony without the need to use SketchUp Pro.

Harmony offers options to convert the 3D files directly to OSB (*.osb) files and save them so that the next time you reload the scene it doesn’t have reconvert them.

The following chapters show you how to import such a model and animate it in Harmony.

When importing an FBX (*.fbx) model, remember that model will never be used for the final render. Harmony itself does not have a 3D rendering engine embedded.

Rendering of the OpenGL representation of the model is supported. However, this is not a high enough quality for a final product. Instead, rendering is supported through outside rendering engines. The majority of users use Maya Softrender, although 3Delight and Pixie are also supported.

Because this model is never used for a final render, you can optimize it quite a bit. The imported FBX model does not require high-resolution textures or sophisticated shaders. It can even have a lower poly count than your final model. It does, however, need to be the same size as your final model, as Harmony will be sending the position, rotation, and scale information of the model in the Harmony scene to Maya later to render. Keeping the imported FBX file as light as possible will give you snappy performance while animating.


When it comes to rendering, a connection is opened between Harmony and the rendering engine—in this case Maya Softrender.

Maya Batch is opened in the background and the information from the Harmony scene file is sent to Maya. All the information needed, including the animation on the model and the position of the camera, is sent to Maya. Maya Batch then opens in the background and the original .mb file is opened. This file should match the FBX model in size, but may have a higher polygon count, a more advanced texturing setup, or even a more advanced set of shaders. Since the full Maya scene is loaded, you can use any shader, lighting setup, and texture that Maya Softrender supports.

The opened scene file repositions the model inside based on the information provided from the Harmony scene file. For consistent lighting effects, you may want to parent the lighting rig to the model so it is also repositioned along with the model.

The frame is then rendered and sent back to Harmony to be composited there. The data comes back into Harmony as a series of Maya *.iff images. These images contain not just image data, but also depth information, and Harmony will use this depth information to properly clip any 2D layers that are interacting with the 3D model in the Harmony scene, resulting in a perfect composite without the need to track any masks.

You can also apply any effects that are supported on bitmaps to the rendered sequence, such as blurs and blending modes.