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.