FaceFX Support
FaceFX Documentation and support
FBX Ogre Exporter
FaceFX uses FxOgreFBX, and open-source Ogre Exporter to create Ogre content from FBX files. The FBX Importer Plugin is responsible for calling into the ExecFxOgreFBX.exe found in the Studio install directory to generate the Ogre files. All Ogre files are then stored in the Documents\FaceFX Studio 20XX\Ogre\Resources\FBXImporterCache directory
Guidelines for Creating FBX files
- Hide meshes and objects you don’t want to export
- When possible, use the Autodesk Media & Entertainment output settings
- Make sure all meshes are weighted to bones (unless it is a morph-only rig). Avoid meshes that are simply children to bones, but unweighted.
- Avoid joints with eINHERIT_Rrs. In Maya this is known as “Segment Scale Compensate”
- Make sure the character is in the bind pose you want to use at frame 0.
- If you are using Max, make sure that the rest pose and bone poses do not include the root bone. During FBX export, rotation will be added to this node to change the file from Z-up to Y-up. Any FaceFX animation on this node will overwrite this rotation and cause the character to be oriented incorrectly.
- Avoid naming conflicts between morph targets, bone pose names defined in a Batch Export text file, and FBX joint attributes.
Creating “@” animations
- ”@” animations let you preview full-body animations inside of FaceFX
- Use the character_name@anim_name.fbx syntax. For example, with mycharacter.fbx, create animation files like mycharacter@walk.fbx and mycharacter@idle.fbx. Keep these files in the same folder as the base FBX file
Miscelaneous Notes
Lighting - From the top-right hand corner of the preview tab, click on the render options button . From here, you can see the bones, mesh, and toggle the default lighting. If you character appears black, and toggling the default lighting fixes the problem, then the lights in the FBX file were exported incorrectly. Deleting or hiding all lights in the FBX file will import the character with default lighting.
Clipping Planes - Scene Scaling & Bounding Box - Bounding Boxes are computed from the skeleton in the bind pose and/or mesh information for morph-only characters. Based on the size of the bounding box, a scaling factor is added to the nodes in the Ogre .SCENE file to prevent the character from being obscured by the camera’s far or near clipping plane.
Bind Pose - FxOgreFBX will default to using frame 0 as the bind position. For troubleshooting content, you can attempt to use the Bind pose stored in the FBX file provided there is only a single bind pose (see the FBX Importer Options dialog)
Textures - Textures are searched for in the location specified in the FBX file, and also in the base FBX file directory. If found, they are copied to the FBXImporterCache directory where they are renamed to avoid conflicts and referenced by the .MATERIAL file created.
Troubleshooting Steps
- Open FBX Importer Options and force the character to use the FBX bind pose (Normally frame 0 is used because not all content has a valid FBX bind pose).
- Import the character into Max or Maya then re-export the FBX file. This can fix some common problems.
- Check the log file in the My Documents\FaceFX Studio 20XX\Logs folder. Look for the most recent ###-fbximporter-log.txt file.
- Try loading the FBX file in another FBX viewer. Either import it into the source package, or use Autodesk’s free FBX viewer and converter. If the FBX file does not import correctly there, the problem may be with the FBX exporter and not FxOgreFBX.
- Transparency is not always correctly written to the FBX file. To add it by hand to the .MATERIAL file, add the following two lines after the emissive color:
scene_blend alpha_blend
depth_write off
- To fix export problems that require you to modify .SCENE or .MATERIAL files by hand, the files are located in the user’s Documents\FaceFX Studio 20XX\Ogre\Resources\FBXImporterCache directory. First check the render asset name by going to Actor->Change Render Asset then find the corresponding .MATERIAL or .SCENE file. Beware that these files may be overwritten if the source FBX files changes on disk. To avoid accidental overwrites, drag FBX files directly onto the ExecFxOgreFBX.exe and place the resulting Ogre files into the FBXImprterCache directory. Then set the render asset accordingly.