[3DS Max Source SMD Export plug-in v1.6]       7
==========================================================================
(c)2011 Neil "Jed" Jedrzejewski (jed@wunderboy.org) http:///www.wunderboy.org


[Info]
======

This plug-in allows you to write reference and sequence SMD files for use when
compiling models for games based on Valve's "Source" base or Half-Life 1 based games.

[Supported versions]
====================

3DS Max 9    - 32/64bit
3DS Max 2008 - 32/64bit
3DS Max 2009 - 32/64bit
3DS Max 2010 - 32/64bit
3DS Max 2011 - 32/64bit
3DS Max 2012 - 32/64bit

[Features]
==========

* Supports Standard and Mult/Sub-Object material types.
* Supports Editable Mesh and Editable Poly geometry.
* Supports Skin and Physique modifiers.
* Supports Biped bone export.
* Supports use of Dummy and Point helpers as bones (Skin Modifier Only)
* Uses material name when diffuse texture is not assigned.
* Optional exporting of a animation sub-range.
* Optional reversing of animation on export.
* Optional exporting of keyframes only.
* Optional skipping of meshes marked non-renderable.
* Export in HL1 or HL2 SMD format.
* Batch export mode via Maxscript.

[Installation]
==============

For 32-bit, copy the SMDExport.dle into your 3DS Max plugins folder.
For 64-bit, copy the SMDExportx64.dle into your 3DS Max plugins folder.

[Instructions and Stuff]
========================

Once installed, you should find "Source SMD" as an export option from the file menu.
You can use regular Export which will export everything visible in the scene or 
Export Selected to only export selected items.

When exporting a reference SMD, frame 0 will be used as the reference pose.

For sequence SMD's, by default it will export the entire animation range. If you only
want a sub-range, select the start and end frame with the spinners. You can also opt
to have the animation exported backwards by ticking the reverse checkbox.

For instructions of how to use batch mode, please check the included Maxscript sample.

NOTES:

* Don't mirror bones using the Tools->Mirror method. Use Animation->Bone Tools->Mirror.
  If you don't use the later method your bone axies become flipped resulting in broken
  animation exports. You'll see a warning in the export window if any of your bones
  are mirrored incorrectly.

* In addition to bones, each mesh also exports an extra "mesh bone" corresponding to the
  meshes own origin. These unused bones are stripped out by the model compiler and can be
  ignored. However, if you export a mesh that uses a Skin or Physique modifier and fail to
  unhide or select the bones it uses for weighting, every vertex weight for that mesh
  will be assiged to the mesh bone instead.

* When using a Skin modifier, you can also use helper objects such as Dummy or Point as 
  bones and weight vertices to them. This can be useful for mechanical animation such as
  guns where parts slide (or translate) via their bone rather than just a simple rotation.

* In HL1 format only one vertex weight per bone is allowed. If more than one is assigned 
  the exporter looks for the bone with the greatest influence and normalises it's weight
  to 1.0.

[Known Bugs]
============

* Some object types, such as nVidia collision hulls cause the exporter to crash.

* On rare occasions, a mesh which has been merge from another may stall the exporter.  

[Changes]
=========

1.6     * Fixed issues with GUI layout on.
        * Added tool-tip help for export options.
        * Added feature to use material name if no diffuse texture is specified.
        * Added feature to not export mesh for objects flagged un-renderable.                     
        * Added export keyframes only and bookend feature.
        * Re-wrote MaxScript interface.        
        * Added (official) support for Max 2011 & 2012

1.5     * Added support for editable spline objects per request.
        * Added support for Max 2010

1.4     * Added better support for exporting explicitly defined vertex normals.
        * Added alternate method for exporting smoothing normals in case of failure.

1.3     * Fixed issue with material type detection on non-English versions of Max.
        * Fixed small issue with vertex weight export.

1.2     * Fixed issue with batch mode always exporting SMD sequences backwards.
        * Fixed small issue with vertex weight export.
        * Added support for Max 2009.

1.1     * Added HL1 format export function
        * Added batch export function for Maxscript
        * Resolved issue where exporting only part of a chain of bones without
          exporting the root node would fail.

1.0     * Fixed bug where mesh materials with out a BITMAP type diffuse texture would
          cause the exporter to crash.
        * Removed logging to text file option and replaced with combined progress/log dialog.
        * Ported to 64-bit version of Max 9.

0.5b    * Fixed error were normals were returned as -1.#IND000 instead of sane values.
          I'm not 100% sure if this is user or a 3DXI error, however this seems to fix it.
        * Added option to log errors/warnings to a log file.

0.4b    * Fixed bones that have been mirrroed (no right hand rule) being exported incorrectly.
          TIP: If you mirror bones, reset their transforms before you use them!

0.3b    * Fixed sub-materials of Sub/Multi-Object material types not being exported correctly.
        * Added trap for invalid face material ID's.

0.2b    * Fixed bug where floating point numbers were output in users regional 
          locale format.
        * Fixed hidden bones and meshes being exported. Now, in normal "Export" mode
          only what is visible is exported. In "Export Selected" mode, what is selected
          is exported even if it is hidden.
        * Fixed bug where a bone who's parent is not to be exported had it's position 
          and rotation misplaced.
        * Revised mesh output so that if a vertex's weights includes a bone that isn't
          to be exported, all weights are collapsed and assigned to the meshes default
          bone. This stops invalid vertex weights.
        * Stopped exporter over-writing file with nothing if Cancel button pressed.

0.1b    * Initial release 


License/Disclaimer
==================
This software is provided 'as-is', without any express or implied warranty. In no
event will the author be held liable for any damages arising from the use of this
software.

Permission is granted to anyone to use this software, subject to the following
restrictions:

1. The origin of this software must NOT be misrepresented; you must not claim that
   you wrote the original software.

2. This software is for PERSONAL USE ONLY and may not be used commercially or for
   any commercial application without prior permission.

3. This software may NOT be bundled with any other product, included in any
   compilation or made available from any internet site without the express
   permission of the author.

4. This notice must NOT be removed or altered from any distribution of this
   software.