#include <mxsPlugin.h>
Public Member Functions |
|
MSEffectXtnd (MSPluginClass *pc, BOOL loading) | |
RefTargetHandle | Clone (RemapDir &remap) |
This method is used by 3ds Max to clone an
object. |
|
EffectParamDlg * | CreateParamDialog (IRendParams *imp) |
DWORD | GBufferChannelsRequired (TimeValue t) |
void | Apply (TimeValue t, Bitmap *bm, RenderGlobalContext *gc, CheckAbortCallback *cb) |
MSEffectXtnd | ( | MSPluginClass * | pc, |
BOOL | loading | ||
) |
RefTargetHandle Clone | ( | RemapDir & | remap | ) | [virtual] |
This method is used by 3ds Max to clone an object.
class MyDerivedPlugin : public MyBasePlugin { const int MY_REFERENCE = 1; ReferenceTarget* Clone(RemapDir& remap) { ReferenceTarget* result = new MyDerivedPlugin(); BaseClone(this, result, remap); return result; } void BaseClone(ReferenceTarget* from, ReferenceTarget* to, RemapDir& remap) { if (!to || !from || from == to) return; MyBasePlugin::BaseClone(from, to, remap); to->ReplaceReference(MY_REFERENCE, remap->CloneRef(from->GetReference(MY_REFERENCE))); } };
This method should not be directly called by plug-ins. Instead, either RemapDir::CloneRef() or CloneRefHierachy() should be used to perform cloning. These methods ensure that the mapping from the original object to the clone is added to the RemapDir used for cloning, which may be used during backpatch operations
remap | - A RemapDir instance used for remapping references during a Clone. |
Reimplemented from MSPluginEffect.
EffectParamDlg* CreateParamDialog | ( | IRendParams * | ip | ) | [virtual] |
Reimplemented from MSPluginEffect.
DWORD GBufferChannelsRequired | ( | TimeValue | t | ) | [virtual] |
Reimplemented from MSPluginEffect.
void Apply | ( | TimeValue | t, |
Bitmap * | bm, | ||
RenderGlobalContext * | gc, | ||
CheckAbortCallback * | cb | ||
) | [virtual] |
Reimplemented from MSPluginEffect.