A global utility plug-in should inherit from the GUP class, and may implement one ore more of the following functions.
GUP::Start()
- Perform initialization tasks, and indicate to 3ds Max whether it is okay to be deallocated.GUP::Stop()
- Perform finalization tasks such as freeing resources.GUP::Control()
- Perform custom processing.GUP::Save()
- Called when 3ds Max is saving a scene file.GUP::Load()
- Called when 3ds Max is loading a scene file.GUP::DeleteThis()
- Called when 3ds Max requests the plug-in to be deleted. A typical implementation would be { delete this; }
.Once a GUP is started, 3ds Max will not make any other calls into the GUP until the GUP is unloaded and deallocated. Other plug-ins who access a pointer to the GUP may choose to call GUP::Control()
.