From BlenderWiki

Jump to: navigation, search
Note: This is an archived version of the Blender Developer Wiki. The current and active wiki is available on wiki.blender.org.

FBX Integration in Blender

Intro

This document describes how the fbx import supplied by assimp will be integrated into Blender.

FBX conversion requirements

assimp resides in its own module, bf_assimp (see assimp integration page). The basic implementation of the assimp-blender bridge is format-agnostic. This won't suffice for FBX since lots of meta data needs to be passed through assimp and processed separately - this is because assimp is not able to represent all FBX format features.

This applies only to parts of the import process, though - for the most of it, the regular assimp-to-blender code suffices.

I think it would be unwise to put the fbx extra logic in bf_assimp - this would just end up a difficult-to-maintain mess. Therefore, my plan is to give fbx its own module that uses the converter classes defined by bf_assimp, but supplements them with fbx-specific code (i.e. by inheritance).

bf_fbx details

bf-fbx is the FBX-to-Blender conversion module. It basically imports fbx files using assimp and converts from Assimp's output data structure (aiScene) to Blender Scenes.

Public interface:

  import_fbx(char*, Context)

Other changes

- FBX gets its own UI menu entry as well - FBX support is an important feature for users, it should not be hidden behind the generic 'import via open asset import library' label. The different importer backends also justify this step.

- the menu item for the raw assimp import should not accept fbx then. This is to avoid confusion.