Autodesk Mudbox 2013 SDK Documentation >

# Writing Plug-ins

This topic describes the basic information related to writing plug-ins.

Plug-in Basics

Most Mudbox plug-ins are represented in memory using the class Plugin. However, when you write a custom plug-in, you must use the macro MB_PLUGIN to create an instance of the Plugin class.

In order to expose a plug-in's functionality to Mudbox, you must hook into the Mudbox RTTI system (see Run-Time Type Information (RTTI)). This is done using the macros DECLARE_CLASS and IMPLEMENT_CLASS.

Plug-in Base Classes

All plug-ins derive either directly or indirectly from the Node class. The following classes are used as base classes for specialized kinds of plug-ins:

- ScreenSpacePicker - Base class of mesh point selection plug-ins.
- Picker - Base class of plug-ins used for finding points on a mesh corresponding to one another.
- Importer - Base class of mesh importer plug-ins.
- Exporter - Base class of mesh exporter plug-ins.
- SurfaceSmoother - Base class of plug-ins that provide information about the limit surface of a mesh.
- TangentGenerator - Base class of plug-ins that customize the definition of tangent space.
- BrushOperation - Base class of custom brush plug-ins.
- MeshGrid - Base class of plug-ins that control the algorithm for dividing meshes into grids.
- MeshRenderer - Base class of plug-ins that transform a mesh into the OpenGL pipeline.

#### See Also

- Kinds of Plug-ins

#### Topics in this section

- Run-Time Type Information (RTTI)
- Instantiating Classes and Plug-ins
- Mesh Importer and Exporter Plug-ins
- Serializing Plug-in Data