Data Transfer – First Test Build

EDIT: This tool is now in master, and will be part of Blender 2.74 release.

So, since a month or two have been working on a tool that we should have had in Blender since ages – generic way to transfer some data from a mesh to another.

Feature is not yet finished, of course, but I think it’s starting to be usable, so made a first set of test builds, available here.

You may also find a first draft of manual on this wiki page.

Usual disclaimers: this is WIP code, it still may change quite a bit before it goes to master, so you should not use it in production (or do it at your own risk!). Please report issues and bugs on Blender tracker. 😉

Any testing and feedback is most welcomed!

Advertisements

Custom Split Normals – Second Testbuild Available

EDIT: This tool is now in master, and will be part of Blender 2.74 release.

Here are three links on Graphicall.org for testbuilds of current Custom Split Normals state of work:

Since first of August, most noticeable changes are:

  • A fair amount of bugs were busted (most noticeable being wrong handling of (interpolation) weights, and crash with the modifier when switching target mesh to Edit mode).
  • Data structures were tweaked (WARNING: this means files saved with builds from 08/01 are not ‘compatible’ with those new builds, they will load, but all custom normals will be lost).
  • Some optimization work was done (especially in code computing final split normals, which is now multi-threaded).
  • Modifier UI was reworked, and a new ‘from split normals’ mode was added, which uses split normals of target, instead of its face normals.

As usual, please note that this remains “experimental” code, do not expect on stability of new features yet, nor of the file format (though this one should not change anymore, imho).

Also, if you are doing some nice tests with these builds, I would appreciate some nice screenshots (and even better, .blend files), those would be more than useful for final documentation! 🙂

Please report any bug you may (will!) find to our bug tracker, https://developer.blender.org.

GameDev Related Articles on code.blender.org

Hey, just a quick one, to share those two nice articles buy Dalai Felinto and Micthell Stokes, in case some of you did not saw them already. 😉

And if I may spoil a bit about 2.72, it should have more FBX feature support (noticeably ShapeKeys in both export and import, and basic import support for armatures and animations)… and who knows, maybe even some custom split normals? 😉

FBX 7.4 Updates – I

So! After hours and hours of tries and failures, desperation and cursing at FBX format, since I could definitively not find any valuable difference between code generated by Blender and by FBXConverter regarding animation, I finally decided to dive into ugly hacking and have a look at binary files themselves…

Well, at least, it was rewarding: I found out some stupid FBX anim-related elements need a specific handling at binary level to be understood by the FBX SDK! I won’t hold forth on a format that needs such ugly tricks (the joys of vault development I presume…).

I’d rather summarize quickly current Blender’s FBX 7.4 binary exporter status:

Implemented and expected to be working!

  • Objects, and simple parent relations between objects (not through constraints, though).
  • Lamps.
  • Cameras.
  • Meshes, including:
    • UVs.
    • VCol.
    • Smooth groups (edges or faces).
    • Faces’ material indices.
  • Materials (Phong or Lambert shading).
  • Textures (only image/video type, embedding should work, needs ‘COPY’ path mode).
  • Materials <-> Textures relations: textures can affect:
    • DiffuseFactor, DiffuseColor.
    • TransparencyFactor, TransparentColor.
    • EmissiveFactor, EmissiveColor.
    • AmbientFactor.
    • SpecularFactor, SpecularColor.
    • Shininess, ShininessExponent.
    • ReflectionFactor, ReflectionColor.
    • Normal/bump.

Implemented, but status unsure (needing testing!)

  • Armature linked to mesh. Binding code itself seems to work OK, but bone’s orientations are usually completely wrong when I import back, still have to figure out what happens here. Although I got feedback from testers saying it imports OK under official FBX apps, so…
  • Meshes’ (Split)Normals, tangents and bitangents (does not handle the 7.4-new “weights” for those, though). 7.4 seems to use 4D vectors, however I’m not quite sure about the compatibility of those with older apps, I might revert it to previous format (3D vectors) for now.

Implemented, but unfinished

  • Animation: basic object baked animation (loc/rot/scale).

TODOs, mandatory

I.e TODOs that need to be addressed before we can consider the exporter finished.

  • Add option to export other geometries (curves, texts, metaballs) as meshes.
  • Finish animation.

 

New FBX Bin 7.3 Export – Stage I

So, we finally have a basic FBX bin 7.3 exporter, need testing!

To test it, just download this file and replace your current fbx addon by the one contained in this archive (io_scene_fbx). Note the old exporter (ASCII 6.1) is still available…

What to expect:

  • Camera, lamps support.
  • Mesh support (with loop normals, UVs, vertex colors, smoothing).
  • Material and texture.

Do not expect any armature nor animation yet. Also please note all this is still big WIP, esp. the material/texture area… (this areas would also need some work on the importer side of the plugin).

Best way to report issues is to use this github’s page, just please try to feature small test cases (just saying “it does not work” without providing any file, or providing 10Mo files, won’t help much). Ideal case is to provide the Blender file, the FBX file as exported by Blender, and a similar scene exported as FBX from a ref app (like latest Maya or Max – 2013 or 2014). Also please be sure your tested app supports latest FBX (ones older than 2012/2013 probably do not).

That’s it for now, will update here as needs arise!