Cleanup, optimization and refactoring of UDK import script
Needs ReviewPublic

Authored by Rodrigo Hernandez (kwizatz) on Jun 29 2017, 4:53 AM.

Details

Summary

This patch rewrites a lot of the code in the UDK import script, it imports a mesh and armature that should be really close to the original if re-exported (provided the exporter makes the same coordinate system adjustments done in the importer)

Highlights: multi-threaded animation processing, simplification and cleanup of a lot of the code in mesh and animation sections, since the import is faster, the restriction to only load the first animation has been removed, matrix adjustments to convert between right and left hand coordinate system, as well as X as forward vs Y as forward direction.

Downsides: Adjusting a bone tail destroys the original bone matrix data, as such, the only bone adjustment done is in regards to its length, which does not destroy the matrix information but provides better, but not optimal visual clues. Either way, if using Blender as a mere format converter, this is more than enough, if used for modding it should be sufficient and if used for video rendering, you probably want to use custom bones and what not.

If there's something I need to change, let me know.

Diff Detail

In today's meeting this patch came up as example how slow we review... we need to organise time for this better. Everyone's just too busy all the time.
Just a heads up, We're working on a solution.

Also note that the next big release for Blender will be 2.80, which is not expected before Q2 next year. Takes away the urgency of reviews a bit too.