[Soc-2012-dev] AssimpFBX Final Report

Alexander Gessler alexander.gessler at gmx.net
Mon Aug 20 20:53:08 CEST 2012


Hi all,

as mentioned in my original proposal, I was away for some days, this is
also the reason for this report being so tight to the deadline.

This is my final report for this GSoC. I'll try to put my work intro
perspective and sum it all up.


This Week
=========

... was not very productive for the aforementioned reason, but I managed
to finish up on some important points:

- FBX importer is now fully integrated into the UI (import options etc),
the same applies to the generic Assimp importer which is kind of a
side-product of my GSoC.

- End User documentation:
http://wiki.blender.org/index.php/User:Aramis_acg/FBX2012-UserDoc

- The importer now produces scenes that come out relatively close to the
original file when re-exported again. This is not a good solution - for
a proper roundtrip (I realized this during the past weeks) we need an
exporter written symmetrically to the importer. Read the last section
for my plans on this.

- Some bugfixes


So what is the current status?
==============================

I think the end-user doc doc I linked to above sums up nicely what the
FBX importer does from a external point of view.

>From a more technical point of view, I added assimp as 3rdparty project
to Blender (ext_assimp), wrote importer frontends for both generic
assimp (bf_assimp) and specialized for fbx (bf_fbx) and integrated them
into the UI. To assimp itself I added the actual FBX importing code,
which I will merge back into assimp's trunk in the next weeks.


Where does it suck?
===================

- Armature import is implemented and and importing FBX skinned files
into assimp's viewing tool now works nicely but the assimp-to-blender
step screws it up. I guess the fix is probably a few lines of code, but
my past experience with skinning and stuff tells me that this could take
a while :-)

- Vertex Smoothing (i.e. converting smoothing groups to Blender's edge
flags) is not implemented yet, but has been requested multiple times.

- I had too little time to improve the import-export roundtrip. I also
realized the best thing to do would be to write a FBX exporter for
assimp (as symmetric as possible to the importer) and to integrate it
into Blender as well.


The future
==========

I'm going to continue working on this, there are so many spots in the
FBX importer that I would like to improve on. In the next weeks I'll
tackle the armature issues, I also might start writing the exporter and
integrate assimp on the export side as well (provided Campbell does not
mind me working on replacing the Python export script).


Personally I'm happy with what I achieved (I hope you are too! ;-).

Thank you for giving me this great opportunity this summer! I'm looking
forward to working further on Blender.

Bye, Alex




More information about the Soc-2012-dev mailing list