The 3DS Max SDK can be used to create plugins in C++. Plugins are packaged in DLLs. A single dll can contain more then one plugin. The following functions are needed in the DLL.
Required Functions
DllMain
LibNumberClasses
Return the number of plugin classes in the DLL.
LibClassDesc
Return the ClassDesc for the selected class index. The ClassDesc describe the class to 3DSMax and is also used to create a class instance when needed.
LibVersion
Return the version of 3DS Max the plugin was built with.
Base-class
BitmapIO
This class is used to create image loader / saver plugins.
GizmoObject
Modifier
Mtl
Used to create material plugins.
SceneExport
Used to create file export plugins.
UtilityObj
Random
Print Messages
mprintf(). #include "maxscrpt\maxscrpt.h"
DebugPrint()
Reference