What's New in 3DXI
 
 
 

This article summarizes features and improvements made to the 3ds Max Data eXchange Interface (3DXI) for release with the 3ds Max 9 SDK and released previously in January 2006.

3DXI Version 2.2 - Released with 3ds Max 9 SDK

New Features

  • 3DXI materials and textures map are constructible from corresponding 3ds Max SDK classes
  • Binormals and Tangents initialization
  • GetClassName() method added to IGame classes
  • Map Channel access added to IGameTextureMap

Improvements

  • Support for DirectX_9_Shader scripted material added
  • Better handling of object in modifier stack for Skin

3DXI version 2.0 - Released in January 2006

New Features

  • Access to DX Material Shader data: new IGameFX interface permits extraction of shader information from FXs assigned to objects within a scene. It provides access to the parameters, functions samplers, etc.
  • Access to sub-object animation: support for Master Point controller through the IGameController interface
  • Redesign of IGameProperty algorithms: all paramblock-based properties, including Custom attributes and Scripted plug-ins, are directly supported. The XML-based presentation is no longer needed. The IGameProp.xml file is only used for User Defined properties.

Improvements

Mesh and Skin functionalities:

  • Support for N-sided polygons: New methods have been added to export polygon mesh representation. However, for shape animated geometry we recommend the usage of the triangle representation of the object.
  • Tangents and Binormals are calculated for each active map channel (accessed by channel ID). The access to the original indexing is based on face parameters.
  • New methods for better handling of skin bones.
  • New option to get normals in object space.

XRef interface:

  • New access to the XRef manager.
  • Implementation of the IGameXRefObject interface.
  • XRef object is now supported by IGameObject.

XML Exporter:

  • The memory leak from ATL/COM is now fixed.

Changed behavior

IGameMesh::GetActiveMapChannelNum() now returns all active map channels including Alpha, Illumination, and Vertex Colors.

Known 3DXI Limitations

In the 3ds Max 8 SDK, importing a skinned mesh could bring the wrong weights position. This is a temporary redraw defect in 3ds Max. The workaround is to save the scene or manually toggle the 'Weight all vertices' option in the Skin modifier UI.

XMLExporter.dle

No change since last drop. See schema specification for details on the XML format. This project is a good starting point to become familiar with 3DXI.