Adverti horiz upsell
Maya To XAML- Exporting a Character with Textures
Maya To XAML- Exporting a Character with Textures
Cyclic Goddard, updated 2006-11-30 07:58:34 UTC 109,876 views  Rating:
(0 ratings)
Page 1 of 1

Exporting a Model with Textures and Materials

This article illustrates the Maya To XAML plug-in, emphasing successful export of model data with textures.  Please note that the plug-in is still in the development beta and still requires a small amount of cleanup before you have the ability to export model and textures.  Future releases will incorporate settings which will allow you to specify these options during the export.

Why export Maya to XAML? This will allow for 3 dimensional interactive user interfaces.  It will not be long before all applications incorporate XAML in one aspect or another.  This tool provides the designer with a bridge to the developer.  

The Original Model:
The example below is a screenshot of the Character created in Maya.  The left screen is the inverse kinematics and mesh (polygon) data.  The right hand screen shows the skin of the object in open GL. 

Preparing for your Export
There are a few parts to this model that will need attention before the export.  You will first need to modify your source model.  I recommend that you save a copy of your scene as the clean version used for exporting.  In the scene above, skeleton transforms of the skin must be baked.  Select the top level object group node, in this case "Bug", and choose the Skin > Detach Skin Options Button.  Choose the settings shown below and click detach:

You can delete your models skeleton after you've baked the skin.

You might notice from the picture above, that the right and left side of the bug's body are identical.  Instances of the left side objects were used for the right side of the body.  That is to say, the same polygon point data is used for the right side as is on the left.  The instances must be made into their own polygon points in order to be recognized.  To do this, select the instanced node, duplicate the node, and then delete the instance.  The Maya To XAML plugin does not currently capture instanced nodes, so only one side of the mesh will get exported, unless the instances are turned into their own mesh data, as mentioned above.

Because the mesh instances were exact mirrors of their parent instance, their scale is -1 and their normals are flipped.  The scale needs to be frozen on both groups and objects.  To freeze the scale, select the groups and objects in the outliner and go to Modify > Freeze Transforms Options button.  Choose the settings shown below and click freeze transforms:

After the transforms are frozen, you can either leave the "opposite" attribute checked for automatic normal flipping, which will have the Maya To XAML exporter automatically flip the normals.  This is located in the Shape Node>Render Stats>"opposite", or you can reverse the normals of the uninstanced, frozen mesh, by going to Modeling>Edit Polygons>Normals>Reverse.

Before you export the model, you will need to go to Edit>Delete All By Type>History.  This ensures that no extra mesh objects or other data is exported.  Once you've deleted the history, you can choose "export all" from the file menu and specify XAML.  Exportable scene data is saved to the xaml file.

Download the latest .NET Framework 3.0 CTP

Checkout the xaml version of the mesh below:

As refinements are made to this plug-in, some of these tasks will be automatically handled by the exporter.  In the meantime, I thank you for testing my product and I hope you enjoy.  You can download the latest plugin at Send any feedback or screenshots of cool stuff you've done or errors you've encountered tommy [at] illuminatedpixel [dot] com or vist the Thomas Goddard site.