3ds Max C++ API Reference
|
Unifies functionality for, both, interactive (ActiveShade) and offline (Production) rendering. More...
#include <UnifiedRenderer.h>
Public Member Functions | |
UnifiedRenderer () | |
virtual | ~UnifiedRenderer () |
virtual ClassDescriptor & | GetClassDescriptor () const =0 |
Returns a reference to the class descriptor that defines this renderer plugin. More... | |
ClassDescriptor () | |
The constructor initializes IMtlRender_Compatibility_Renderer. More... | |
virtual | ~ClassDescriptor () |
virtual UnifiedRenderer * | CreateRenderer (const bool loading)=0 |
Returns a new instance of the renderer plugin. More... | |
virtual int | IsPublic () override |
This default implementation returns true. More... | |
virtual void * | Create (BOOL loading) override final |
This method is final to enforce going through CreateRenderer(). More... | |
virtual SClass_ID | SuperClassID () override final |
Returns RENDERER_CLASS_ID. More... | |
virtual const MCHAR * | Category () override |
This default implementation returns "Renderer". More... | |
virtual const MCHAR * | InternalName () override=0 |
Made pure virtual to enforce implementation. More... | |
virtual HINSTANCE | HInstance () override=0 |
Made pure virtual to enforce implementation. More... | |
Render Session Creation | |
| |
virtual std::unique_ptr< IOfflineRenderSession > | CreateOfflineSession (IRenderSessionContext &sessionContext)=0 |
Creates a new render session, for offline (non-interactive) rendering. More... | |
virtual std::unique_ptr< IInteractiveRenderSession > | CreateInteractiveSession (IRenderSessionContext &sessionContext)=0 |
Creates a new render session, for interactive (ActiveShade) rendering. More... | |
virtual bool | SupportsInteractiveRendering () const =0 |
Returns whether this renderer supports interactive, that is: if an interactive render session can be created with CreateInteractiveSession(). More... | |
File I/O | |
| |
virtual IOResult | Load_UnifiedRenderer (ILoad &iload)=0 |
Replaces ReferenceMaker::Load() for loading plugin-specific data. More... | |
virtual IOResult | Save_UnifiedRenderer (ISave &isave) const =0 |
Replaces ReferenceMaker::Save() for loading plugin-specific data. More... | |
Interface Access | |
| |
virtual void * | GetInterface_UnifiedRenderer (ULONG id)=0 |
Replaces Animatable::GetInterface(ULONG), which is implemented as final by UnifiedRenderer to enforce correct behaviour. More... | |
virtual BaseInterface * | GetInterface_UnifiedRenderer (Interface_ID id)=0 |
Replaces InterfaceServer::GetInterface(Interface_ID), which is implemented as final by UnifiedRenderer to enforce correct behaviour. More... | |
Scene Options | |
| |
virtual bool | MotionBlurIgnoresNodeProperties () const =0 |
Enables the renderer to override the behaviour of per-object motion blur options. More... | |
Offline Rendering | |
All the data passed to this method is exposed through class IRenderSessionContext. | |
virtual int | Open (INode *scene, INode *vnode, ViewParams *viewPar, RendParams &rp, HWND hwnd, DefaultLight *defaultLights, int numDefLights, RendProgressCallback *prog) override final |
This method is final to enforce usage of the render session. All the data passed to this method is exposed through class IRenderSessionContext. More... | |
virtual int | Render (TimeValue t, Bitmap *tobm, FrameRendParams &frp, HWND hwnd, RendProgressCallback *prog, ViewParams *viewPar) override final |
This method is final to enforce usage of the render session. All the data passed to this method is exposed through class IRenderSessionContext. More... | |
virtual void | Close (HWND hwnd, RendProgressCallback *prog) override final |
This method is final to enforce usage of the render session. All the data passed to this method is exposed through class IRenderSessionContext. More... | |
virtual bool | ApplyRenderEffects (TimeValue t, Bitmap *pBitmap, bool updateDisplay) override final |
This method is final to enforce usage of the render session. It applies the render effects that are active in the current render session. More... | |
Interactive Rendering | |
Internally implements the IInteractiveRenderer interface. | |
virtual IInteractiveRender * | GetIInteractiveRender () override final |
Process Control | |
| |
virtual bool | IsStopSupported () const override=0 |
Returns whether the render supports the pause command (and button). See Renderer::IsPauseSupported(). More... | |
virtual PauseSupport | IsPauseSupported () const override=0 |
Returns whether the render supports the pause command (and button). See Renderer::IsPauseSupported(). More... | |
virtual void | StopRendering () override final |
This method forwards to the render session. See IOfflineRenderSession::StopRendering(). More... | |
virtual void | PauseRendering () override final |
This method forwards to the render session. See IOfflineRenderSession::PauseRendering(). More... | |
virtual void | ResumeRendering () override final |
This method forwards to the render session. See IOfflineRenderSession::ResumeRendering(). More... | |
Parameter Access | |
virtual int | NumParamBlocks () override=0 |
See Animatable::GetParamBlock(int). More... | |
virtual IParamBlock2 * | GetParamBlock (int i) override=0 |
See Animatable::GetParamBlock(int). More... | |
virtual IParamBlock2 * | GetParamBlockByID (BlockID id) override=0 |
See Animatable::GetParamBlockByID(BlockID). More... | |
virtual void | ResetParams () override |
See Renderer::ResetParams(). The default implementation resets all the parameter blocks. More... | |
Tabbed Dialog | |
The implementation should create at least one tab, in which the render settings UI will be displayed. | |
virtual void | AddTabToDialog (ITabbedDialog *dialog, ITabDialogPluginTab *tab) override=0 |
Default implementation refuses radiosity and ray-tracer tabs, to enable only showing the renderer's own tabs. More... | |
virtual int | AcceptTab (ITabDialogPluginTab *tab) override |
Default implementation refuses radiosity and ray-tracer tabs, to enable only showing the renderer's own tabs. More... | |
Implementation of classes ReferenceTarget / ReferenceMaker | |
| |
virtual RefTargetHandle | Clone (RemapDir &remap) override |
Creates a new renderer plugin, cloned/copied from this one. More... | |
virtual RefResult | NotifyRefChanged (const Interval &changeInt, RefTargetHandle hTarget, PartID &partID, RefMessage message, BOOL propagate) override |
This default implementation ignores all reference messages, as renderers typically don't need to react to them. More... | |
virtual IOResult | Load (ILoad *iload) override final |
This method is final to enable UnifiedRenderer to load its own data. Use Load_UnifiedRenderer() to load data in the sub-class. More... | |
virtual IOResult | Save (ISave *isave) override final |
This method is final to enable UnifiedRenderer to load its own data. Use Save_UnifiedRenderer() to load data in the sub-class. More... | |
virtual int | NumRefs () override=0 |
Made pure virtual to enforce implementation. More... | |
virtual RefTargetHandle | GetReference (int i)=0 |
Made pure virtual to enforce implementation. More... | |
virtual void | SetReference (int i, RefTargetHandle rtarg)=0 |
Made pure virtual to enforce implementation. More... | |
Implementation of class Animatable, misc. | |
Use GetInterface_UnifiedRenderer(ULONG) to expose interfaces in the sub-class. | |
virtual void * | GetInterface (ULONG id) override final |
This method is final to enable UnifiedRenderer to expose its own interfaces correctly. More... | |
virtual BaseInterface * | GetInterface (Interface_ID id) override final |
This method is final to enable UnifiedRenderer to expose its own interfaces correctly. More... | |
virtual Class_ID | ClassID () override final |
Call forwarded to class descriptor (see UnifiedRenderer::ClassDescriptor). More... | |
virtual SClass_ID | SuperClassID () override final |
Returns RENDERER_CLASS_ID. More... | |
virtual void | GetClassName (MSTR &s, bool localized=true) const override final |
Call forwarded to class descriptor (see UnifiedRenderer::ClassDescriptor). More... | |
virtual int | NumSubs () override |
This default implementation returns the number of parameter blocks. More... | |
virtual MSTR | SubAnimName (int i, bool localized=true) override |
This default implementation returns the name of the parameter block at index i. More... | |
virtual Animatable * | SubAnim (int i) override |
This default implementation returns the param block at index i. More... | |
virtual void | DeleteThis () override final |
Calls: "delete this" and performs cleanup. More... | |
![]() | |
virtual RendParamDlg * | CreateParamDialog (IRendParams *ir, BOOL prog=FALSE)=0 |
This method is called to create and return a pointer to an instance of the RendParamDlg class. More... | |
virtual int | GetAAFilterSupport () |
virtual bool | SupportsTexureBaking () |
Renderers which support texture baking should override this method to return true. More... | |
virtual bool | SupportsCustomRenderPresets () |
A renderer should override this method to return true if it supports any custom preset categories beyond the standard categories. More... | |
virtual int | RenderPresetsFileVersion () |
Return a number indicating the current version of the renderer's custom preset. More... | |
virtual BOOL | RenderPresetsIsCompatible (int version) |
Return true if the renderer can load presets of the indicated version. More... | |
virtual const MCHAR * | RenderPresetsMapIndexToCategory (int catIndex) |
Returns the UI name of a supported custom category. More... | |
virtual int | RenderPresetsMapCategoryToIndex (const MCHAR *category) |
Returns the index of a supported custom category. More... | |
virtual int | RenderPresetsPreSave (ITargetedIO *root, BitArray saveCategories) |
called before a render preset is saved. More... | |
virtual int | RenderPresetsPostSave (ITargetedIO *, BitArray) |
called after a preset is saved. More... | |
virtual int | RenderPresetsPreLoad (ITargetedIO *root, BitArray saveCategories) |
called before a preset is loaded. More... | |
virtual int | RenderPresetsPostLoad (ITargetedIO *root, BitArray loadCategories) |
called after a preset is loaded. More... | |
virtual bool | CompatibleWithAnyRenderElement () const =0 |
Returns whether this renderer plugin is compatible with the given render element. More... | |
virtual bool | CompatibleWithRenderElement (IRenderElement &pIRenderElement) const =0 |
Returns whether this renderer plugin is compatible with the given render element. More... | |
virtual void | GetVendorInformation (MSTR &info) const =0 |
Platform information concerning the renderer. More... | |
virtual void | GetPlatformInformation (MSTR &info) const =0 |
Platform information concerning the renderer. More... | |
virtual bool | HasRequirement (Requirement requirement)=0 |
Returns true if the renderer has the given requirement, or returns false otherwise. More... | |
![]() | |
virtual BOOL | IsRefTarget () |
Checks if this is a ReferenceTarget. More... | |
CoreExport RefResult | TestForLoop (const Interval &refInterval, RefMakerHandle hmaker) |
Tests for a cyclical reference. More... | |
CoreExport BOOL | HasDependents () |
Checks if a ReferenceTarget has references. More... | |
CoreExport BOOL | HasRealDependents () |
Checks if this has Real (Strong) Dependents. More... | |
void | BeginDependencyTest () |
Starts Dependency Test. More... | |
BOOL | EndDependencyTest () |
Ends Dependency Test. More... | |
virtual void | RefAdded (RefMakerHandle rm) |
Called after a reference is made to a target. More... | |
virtual void | RefAddedUndoRedo (RefMakerHandle rm) |
Called after a reference is made to a target because of undo or redo. More... | |
virtual void | RefDeleted () |
Called after a references to this is deleted. More... | |
virtual void | RefDeletedUndoRedo () |
Called after a references to this is deleted because of undo or redo. More... | |
CoreExport RefResult | DeleteAllRefsToMe () |
Deletes all references to this ReferenceTarget. More... | |
CoreExport RefResult | TransferReferences (RefTargetHandle oldTarget, BOOL delOld=FALSE) |
Transfers all the references from oldTarget to this. More... | |
CoreExport int | DoEnumDependents (DependentEnumProc *dep) |
Begins an enumeration that searches back in the dependency network. More... | |
virtual CoreExport void | BaseClone (ReferenceTarget *from, ReferenceTarget *to, RemapDir &remap) |
This method copies base class data from an object to its clone. More... | |
virtual CoreExport RefResult | NotifyDependents (const Interval &changeInt, PartID partID, RefMessage message, SClass_ID sclass=NOTIFY_ALL, BOOL propagate=TRUE, RefTargetHandle hTarg=NULL, NotifyDependentsOption notifyDependentsOption=REFNOTIFY_ALLOW_OPTIMIZATIONS) |
Notify all dependent RefMakers concerned with the message. More... | |
void | FlagDependents (TimeValue t, PartID which=PART_PUT_IN_FG) |
This sends the REFMSG_FLAGDEPENDENTS message up the pipeline. More... | |
virtual void | NotifyForeground (TimeValue t) |
This method is called to flag dependents into the FG. More... | |
virtual void | NotifyTarget (int message, ReferenceMaker *hMaker) |
Sends messages to ReferenceTargets. More... | |
CoreExport | ReferenceTarget () |
Constructor. More... | |
virtual CoreExport RefResult | AutoDelete () |
Deletes the object when it has no more real dependents. More... | |
CoreExport RefResult | MaybeAutoDelete () |
Deletes the object when it has no more real dependents. More... | |
![]() | |
CoreExport RefResult | ReplaceReference (int which, RefTargetHandle newtarg, BOOL delOld=TRUE) |
Used when cloning reference makers. More... | |
CoreExport RefResult | DeleteAllRefsFromMe () |
Deletes all references from this ReferenceMaker. More... | |
CoreExport RefResult | DeleteAllRefs () |
Deletes all references both to and from this item. More... | |
CoreExport RefResult | DeleteReference (int i) |
Deletes the specified reference. More... | |
virtual BOOL | CanTransferReference (int i) |
Tells whether this reference can be transfered. More... | |
CoreExport ReferenceSaveManager & | GetReferenceSaveManager () |
Access the ReferenceSaveManager of this ReferenceMaker. More... | |
virtual int | RemapRefOnLoad (int iref) |
Used to load old files with references. More... | |
virtual CoreExport void | RescaleWorldUnits (float f) |
Rescale size of all world units in reference hierarchy. More... | |
virtual CoreExport void | EnumAuxFiles (AssetEnumCallback &assetEnum, DWORD flags) |
Enumerate auxiliary files (e.g. bitmaps) More... | |
virtual CoreExport void | SaveEnum (SaveEnumProc &sep, BOOL isNodeCall=0) |
The default save enumeration. More... | |
virtual CoreExport bool | SpecifySaveReferences (ReferenceSaveManager &referenceSaveManager) |
Used to specify reference slot remapping during scene file save. More... | |
CoreExport int | DoEnumDependents (DependentEnumProc *dep) |
Begins an enumeration that searches back in the dependency network. More... | |
CoreExport bool | EnumRefHierarchy (RefEnumProc &proc, bool includeCustAttribs=true, bool includeIndirectRefs=true, bool includeNonPersistentRefs=true, bool preventDuplicatesViaFlag=true) |
This method provides a general purpose reference enumerator. More... | |
CoreExport int | FindRef (RefTargetHandle rtarg) |
Get the index of the ReferenceTarget. More... | |
virtual BOOL | IsRefMaker () |
Tells whether it is a ReferenceMaker. More... | |
virtual BOOL | IsRealDependency (ReferenceTarget *rtarg) |
Returns whether this is a "real" (strong) dependency or not. More... | |
virtual BOOL | ShouldPersistWeakRef (RefTargetHandle rtarg) |
Specifies whether a weak reference is to be persisted on a partial load or save. More... | |
CoreExport | ReferenceMaker () |
Constructor. More... | |
CoreExport void | DeleteMe () |
Deletes an instance of this class. More... | |
![]() | |
virtual void | FreeCaches () |
virtual int | NumChildren () |
virtual Animatable * | ChildAnim (int i) |
virtual CoreExport MSTR | NodeName () |
virtual void | EditTrack () |
virtual CoreExport BOOL | SubAnimSetKeyBufferPresent (int subNum) |
returns true if the sub-anim has a "Set Key" buffer present More... | |
virtual BOOL | SetKeyBufferPresent () |
returns true if there is a "Set Key" buffer present More... | |
virtual CoreExport void | SubAnimCommitSetKeyBuffer (TimeValue t, int subNum) |
Commit any "Set Key" buffers on the given sub-anim. More... | |
virtual void | CommitSetKeyBuffer (TimeValue t) |
Commit any "Set Key" buffers. More... | |
virtual CoreExport void | SubAnimRevertSetKeyBuffer (int subNum) |
Revert any "Set Key" buffers on the given sub-anim. More... | |
virtual void | RevertSetKeyBuffer () |
Revert any "Set Key" buffers. More... | |
virtual LRESULT CALLBACK | TrackViewWinProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) |
This function is obsolete. More... | |
virtual bool | IsParamBlockDesc2Used (ParamBlockDesc2 *desc) |
Returns true if the passed description is being used. More... | |
virtual bool | GetMacroRecorderName (bool used_as_rhs_value, MSTR &objectSpecifiedName) |
This method is called to access the object specified name to use for the Maxscript macrorecorder. More... | |
CoreExport | Animatable () |
Constructor. More... | |
virtual void | GetClassName (MSTR &s) MAX_SEALED |
MSTR | ClassName (bool localized=true) const |
Returns the name of the plugin class. More... | |
virtual void | BeginEditParams (IObjParam *ip, ULONG flags, Animatable *prev=NULL) |
virtual void | EndEditParams (IObjParam *ip, ULONG flags, Animatable *next=NULL) |
virtual CoreExport void | ReleaseInterface (ULONG id, void *i) |
virtual CoreExport int | SetProperty (ULONG id, void *data) |
virtual CoreExport void * | GetProperty (ULONG id) |
CoreExport void | AppendProperty (AnimProperty *prop) |
A function to directly add arbitrary properties to this object developers should ensure that the properties ID does not conflict with any Max-specific IDs. More... | |
CoreExport AnimProperty * | FindProperty (DWORD id) |
Find any property. More... | |
CoreExport void | AddAppDataChunk (const Class_ID &cid, SClass_ID sid, DWORD sbid, DWORD len, void *data) |
Adds application/plugin specific (custom) data to an Animatable. More... | |
CoreExport AppDataChunk * | GetAppDataChunk (const Class_ID &cid, SClass_ID sid, DWORD sbid) |
Retrieves the application/plugin specific (custom) data stored with an Animatable. More... | |
CoreExport BOOL | RemoveAppDataChunk (const Class_ID &cid, SClass_ID sid, DWORD sbid) |
Deletes the application/plugin specific (custom) data stored with an Animatable. More... | |
CoreExport void | ClearAllAppData () |
Deletes all application/plugin specific (custom) data stored with an Animatable. More... | |
virtual MSTR | SubAnimName (int i) MAX_SEALED |
virtual BOOL | CanDeleteSubAnim (int i) |
virtual void | DeleteSubAnim (int i) |
virtual DWORD | GetSubAnimCurveColor (int subNum) |
virtual int | SubNumToRefNum (int subNum) |
virtual BOOL | CanCopyAnim () |
CoreExport int | HasSubElements (int type=0) |
virtual int | GetSubFCurveExtents (int subNum, ParamDimensionBase *dim, float &min, float &max, DWORD flags) |
The values max and min should be initialized before calling this function. More... | |
virtual ParamDimension * | GetParamDimension (int i) |
virtual BOOL | SelectSubAnim (int subNum) |
virtual BOOL | BypassTreeView () |
virtual BOOL | BypassTrackBar () |
virtual BOOL | BypassPropertyLevel () |
virtual BOOL | InvisibleProperty () |
virtual int | NumKeys () |
virtual TimeValue | GetKeyTime (int index) |
virtual int | GetKeyIndex (TimeValue t) |
virtual BOOL | GetNextKeyTime (TimeValue t, DWORD flags, TimeValue &nt) |
virtual void | CopyKeysFromTime (TimeValue src, TimeValue dst, DWORD flags) |
virtual void | DeleteKeyAtTime (TimeValue t) |
virtual BOOL | IsKeyAtTime (TimeValue t, DWORD flags) |
virtual int | GetKeyTimes (Tab< TimeValue > ×, Interval range, DWORD flags) |
virtual int | GetKeySelState (BitArray &sel, Interval range, DWORD flags) |
CoreExport void | OpenTreeEntry (int type, DWORD tv) |
CoreExport void | CloseTreeEntry (int type, DWORD tv) |
CoreExport int | IsTreeEntryOpen (int type, DWORD tv) |
CoreExport BOOL | GetSelInTrackView (DWORD tv) |
CoreExport void | SetSelInTrackView (DWORD tv, BOOL sel) |
CoreExport BOOL | InTrackViewSelSet (int which) |
CoreExport void | SetTrackViewSelSet (int which, BOOL inOut) |
virtual BOOL | AssignController (Animatable *control, int subAnim) |
virtual BOOL | CanAssignController (int subAnim) |
Return true if we can reassign the subanim specified. More... | |
virtual BOOL | CanMakeUnique () |
CoreExport int | EnumAnimTree (AnimEnum *animEnum, Animatable *client, int subNum) |
virtual int | RenderBegin (TimeValue t, ULONG flags=0) |
virtual int | RenderEnd (TimeValue t) |
virtual CoreExport Interval | GetTimeRange (DWORD flags) |
virtual void | EditTimeRange (Interval range, DWORD flags) |
virtual void | DeleteTime (Interval iv, DWORD flags) |
virtual void | ReverseTime (Interval iv, DWORD flags) |
virtual void | ScaleTime (Interval iv, float s) |
virtual void | InsertTime (TimeValue ins, TimeValue amount) |
virtual BOOL | SupportTimeOperations () |
virtual CoreExport void | MapKeys (TimeMap *map, DWORD flags) |
virtual void | DeleteKeys (DWORD flags) |
virtual void | DeleteKeyByIndex (int index) |
virtual void | SelectKeys (TrackHitTab &sel, DWORD flags) |
virtual void | SelectSubKeys (int subNum, TrackHitTab &sel, DWORD flags) |
virtual void | SelectSubCurve (int subNum, BOOL sel) |
virtual void | SelectKeyByIndex (int i, BOOL sel) |
virtual BOOL | IsKeySelected (int i) |
virtual void | FlagKey (TrackHitRecord hit) |
virtual int | GetFlagKeyIndex () |
virtual int | NumSelKeys () |
virtual void | CloneSelectedKeys (BOOL offset=FALSE) |
virtual void | AddNewKey (TimeValue t, DWORD flags) |
virtual void | MoveKeys (ParamDimensionBase *dim, float delta, DWORD flags) |
virtual void | ScaleKeyValues (ParamDimensionBase *dim, float origin, float scale, DWORD flags) |
virtual void | SelectCurve (BOOL sel) |
virtual BOOL | IsCurveSelected () |
Returns TRUE if the function curve is selected; otherwise returns FALSE. More... | |
virtual BOOL | IsSubCurveSelected (int subNum) |
Returns the selected state of the sub-curve whose index is passed. More... | |
virtual int | GetSelKeyCoords (TimeValue &t, float &val, DWORD flags) |
virtual void | SetSelKeyCoords (TimeValue t, float val, DWORD flags) |
virtual int | SetSelKeyCoordsExpr (ParamDimension *dim, const MCHAR *timeExpr, const MCHAR *valExpr, DWORD flags) |
virtual void | AdjustTangents (TrackHitRecord hit, ParamDimensionBase *dim, Rect &rcGraph, float tzoom, int tscroll, float vzoom, int vscroll, int dx, int dy, DWORD flags) |
virtual void | AdjustTangents (TrackHitRecord hit, ParamDimensionBase *dim, float angle, float length, DWORD flags) |
virtual CoreExport BOOL | IsAnimated () |
virtual BOOL | CanCopyTrack (Interval iv, DWORD flags) |
virtual BOOL | CanPasteTrack (TrackClipObject *cobj, Interval iv, DWORD flags) |
virtual TrackClipObject * | CopyTrack (Interval iv, DWORD flags) |
virtual void | PasteTrack (TrackClipObject *cobj, Interval iv, DWORD flags) |
virtual BOOL | CanCopySubTrack (int subNum, Interval iv, DWORD flags) |
virtual BOOL | CanPasteSubTrack (int subNum, TrackClipObject *cobj, Interval iv, DWORD flags) |
virtual TrackClipObject * | CopySubTrack (int subNum, Interval iv, DWORD flags) |
virtual void | PasteSubTrack (int subNum, TrackClipObject *cobj, Interval iv, DWORD flags) |
virtual int | GetTrackVSpace (int lineHeight) |
virtual int | HitTestTrack (TrackHitTab &hits, Rect &rcHit, Rect &rcTrack, float zoom, int scroll, DWORD flags) |
virtual int | PaintTrack (ParamDimensionBase *dim, HDC hdc, Rect &rcTrack, Rect &rcPaint, float zoom, int scroll, DWORD flags) |
virtual int | PaintSubTrack (int subNum, ParamDimensionBase *dim, HDC hdc, Rect &rcTrack, Rect &rcPaint, float zoom, int scroll, DWORD flags) |
virtual int | PaintFCurves (ParamDimensionBase *dim, HDC hdc, Rect &rcGraph, Rect &rcPaint, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags) |
virtual int | HitTestFCurves (ParamDimensionBase *dim, TrackHitTab &hits, Rect &rcHit, Rect &rcGraph, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags) |
virtual int | PaintSubFCurves (int subNum, ParamDimensionBase *dim, HDC hdc, Rect &rcGraph, Rect &rcPaint, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags) |
virtual int | HitTestSubFCurves (int subNum, ParamDimensionBase *dim, TrackHitTab &hits, Rect &rcHit, Rect &rcGraph, float tzoom, int tscroll, float vzoom, int vscroll, DWORD flags) |
virtual void | EditTrackParams (TimeValue t, ParamDimensionBase *dim, const MCHAR *pname, HWND hParent, IObjParam *ip, DWORD flags) |
virtual int | TrackParamsType () |
virtual int | GetFCurveExtents (ParamDimensionBase *dim, float &min, float &max, DWORD flags) |
This method is called to calculate the largest and smallest values of the anim. More... | |
CoreExport void | AddNoteTrack (NoteTrack *note) |
CoreExport void | DeleteNoteTrack (NoteTrack *note, BOOL delNote=TRUE) |
CoreExport BOOL | HasNoteTracks () |
CoreExport int | NumNoteTracks () |
CoreExport NoteTrack * | GetNoteTrack (int i) |
virtual void | FreeAllBitmaps () |
virtual void | GetSystemNodes (INodeTab &nodes, SysNodeContext Context) |
virtual BOOL | IsSubClassOf (Class_ID classID) |
returns true if the animatable has sub-classed off the given class More... | |
virtual CoreExport void | MouseCycleCompleted (TimeValue t) |
virtual CoreExport void | MouseCycleStarted (TimeValue t) |
CoreExport bool | SvSaveData (ISave *isave, USHORT id) |
CoreExport bool | SvLoadData (ILoad *iLoad) |
CoreExport DWORD | SvGetRefIndex () |
CoreExport void | SvSetRefIndex (DWORD i) |
CoreExport bool | SvDeleteRefIndex () |
virtual CoreExport SvGraphNodeReference | SvTraverseAnimGraph (IGraphObjectManager *gom, Animatable *owner, int id, DWORD flags) |
CoreExport SvGraphNodeReference | SvStdTraverseAnimGraph (IGraphObjectManager *gom, Animatable *owner, int id, DWORD flags) |
virtual CoreExport bool | SvCanInitiateLink (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvCanConcludeLink (IGraphObjectManager *gom, IGraphNode *gNode, IGraphNode *gNodeChild) |
virtual CoreExport MSTR | SvGetName (IGraphObjectManager *gom, IGraphNode *gNode, bool isBeingEdited) |
virtual CoreExport bool | SvCanSetName (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvSetName (IGraphObjectManager *gom, IGraphNode *gNode, const MSTR &name) |
virtual CoreExport bool | SvCanRemoveThis (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvRemoveThis (IGraphObjectManager *gom, IGraphNode *gNode) |
Called when the user deletes this object in the schematic view... More... | |
virtual CoreExport bool | SvIsSelected (IGraphObjectManager *gom, IGraphNode *gNode) |
Returns true if the object is selected in its schematic view. More... | |
virtual CoreExport bool | SvIsHighlighted (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport COLORREF | SvHighlightColor (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport COLORREF | SvGetSwatchColor (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvIsInactive (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvLinkChild (IGraphObjectManager *gom, IGraphNode *gNodeThis, IGraphNode *gNodeChild) |
virtual CoreExport bool | SvHandleDoubleClick (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport MultiSelectCallback * | SvGetMultiSelectCallback (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvCanSelect (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvEditProperties (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport MSTR | SvGetTip (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport MSTR | SvGetRefTip (IGraphObjectManager *gom, IGraphNode *gNode, IGraphNode *gNodeMaker) |
virtual CoreExport bool | SvCanDetach (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport bool | SvDetach (IGraphObjectManager *gom, IGraphNode *gNode) |
virtual CoreExport MSTR | SvGetRelTip (IGraphObjectManager *gom, IGraphNode *gNodeTarget, int id, IGraphNode *gNodeMaker) |
Returns a string to be displayed in the tip window in the schematic view for a relationship from "gNodeMaker" to "gNodeTarget"... More... | |
virtual CoreExport bool | SvCanDetachRel (IGraphObjectManager *gom, IGraphNode *gNodeTarget, int id, IGraphNode *gNodeMaker) |
Returns true if this object can respond to the SvDetachRel(...) method... More... | |
virtual CoreExport bool | SvDetachRel (IGraphObjectManager *gom, IGraphNode *gNodeTarget, int id, IGraphNode *gNodeMaker) |
Detach this relationship. More... | |
virtual CoreExport bool | SvHandleRelDoubleClick (IGraphObjectManager *gom, IGraphNode *gNodeTarget, int id, IGraphNode *gNodeMaker) |
Called when this relationship is double-clicked in the schematic view... More... | |
CoreExport ICustAttribContainer * | GetCustAttribContainer () |
This method returns a pointer to the custom attributes container interface class. More... | |
CoreExport void | AllocCustAttribContainer () |
This method allocates space for a custom attributes container. More... | |
CoreExport void | DeleteCustAttribContainer () |
This method deletes space used by a custom attributes container. More... | |
void | SetAFlag (DWORD mask) |
void | ClearAFlag (DWORD mask) |
Clears one or more bits in the Animatable flags. More... | |
bool | TestAFlag (DWORD mask) const |
Tests one or more bits in the Animatable flags. More... | |
void | SetAFlagEx (DWORD mask) |
Sets one or more bits in the Animatable extended flags. More... | |
void | ClearAFlagEx (DWORD mask) |
Clears one or more bits in the Animatable extended flags. More... | |
bool | TestAFlagEx (DWORD mask) const |
Tests one or more bits in the Animatable extended flags. More... | |
CoreExport bool | TestFlagBit (int index) |
Tests the specified flag bit. More... | |
CoreExport void | SetFlagBit (int index, bool newValue=true) |
Sets the specified flag bit. More... | |
CoreExport void | ClearFlagBit (int index) |
Clears the specified flag bit. More... | |
![]() | |
virtual UtilExport | ~InterfaceServer () |
Destructor. More... | |
template<class InterfaceType > | |
InterfaceType * | GetTypedInterface () |
![]() | |
virtual void | Activate (ITabbedDialog *dialog) |
Notify the object that the dialog is activated in a tabbed dialog. More... | |
virtual void | Deactivate (ITabbedDialog *dialog) |
Notify the object that the dialog is deactivated in a tabbed dialog. More... | |
![]() | |
virtual UtilExport | ~BaseInterface () |
Destructor. More... | |
virtual bool | RegisterNotifyCallback (InterfaceNotifyCallback *incb) |
virtual void | UnRegisterNotifyCallback (InterfaceNotifyCallback *incb) |
virtual BaseInterface * | AcquireInterface () |
virtual void | ReleaseInterface () |
virtual void | DeleteInterface () |
virtual BaseInterface * | CloneInterface (void *remapDir=NULL) |
![]() | |
void | Init (ClassDesc &classDesc) |
virtual bool | IsCompatibleWithMtlBase (ClassDesc &mtlBaseClassDesc)=0 |
![]() | |
CoreExport | FPInterfaceDesc () |
CoreExport | FPInterfaceDesc (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, ULONG flag,...) |
CoreExport | ~FPInterfaceDesc () |
virtual void | Init () |
LifetimeType | LifetimeControl () |
CoreExport void | LoadDescriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *pCD, ULONG flag,...) |
CoreExport void | AppendFunction (int id,...) |
Add a new function to this interface descriptor. More... | |
CoreExport void | AppendProperty (int id,...) |
Add a new property to this interface descriptor. More... | |
CoreExport void | AppendEnum (int id,...) |
Add a new enum to this interface descriptor. More... | |
CoreExport void | SetClassDesc (ClassDesc *i_cd) |
CoreExport va_list | check_fn (va_list ap, int id) |
CoreExport va_list | scan_fn (va_list ap, int id, int index) |
CoreExport va_list | check_prop (va_list ap, int id) |
CoreExport va_list | scan_prop (va_list ap, int id, int index) |
CoreExport va_list | check_enum (va_list ap, EnumID id) |
CoreExport va_list | scan_enum (va_list ap, EnumID id, int index) |
FPInterfaceDesc * | GetDesc () |
Interface_ID | GetID () |
CoreExport FPFunctionDef * | GetFnDef (FunctionID fid) |
ActionTable * | GetActionTable () |
CoreExport void | EnableActions (BOOL onOff) |
virtual CoreExport const MCHAR * | GetRsrcString (StringResID id) |
![]() | |
virtual CoreExport FPStatus | Invoke (FunctionID fid, TimeValue t=0, FPParams *params=NULL) |
virtual FPStatus | Invoke (FunctionID fid, FPParams *params) |
virtual CoreExport FPStatus | Invoke (FunctionID fid, TimeValue t, FPValue &result, FPParams *params=NULL) |
virtual FPStatus | Invoke (FunctionID fid, FPValue &result, FPParams *params=NULL) |
virtual CoreExport FunctionID | FindFn (const MCHAR *name) |
virtual CoreExport BOOL | IsEnabled (FunctionID actionID) |
virtual CoreExport BOOL | IsChecked (FunctionID actionID) |
virtual CoreExport BOOL | IsVisible (FunctionID actionID) |
virtual CoreExport FunctionID | GetIsEnabled (FunctionID actionID) |
virtual CoreExport FunctionID | GetIsChecked (FunctionID actionID) |
virtual CoreExport FunctionID | GetIsVisible (FunctionID actionID) |
Protected Member Functions | |
virtual bool | GetEnableInteractiveMEditSession () const =0 |
Returns whether the renderer supports interactive material editor sessions. More... | |
virtual bool | IsCompatibleWrapperMaterial (ClassDesc &mtlBaseClassDesc) const |
Returns whether the given material class descriptor is that of a "wrapper" material, which would get resolved by BaseTranslator_INode::GetMaterial(). More... | |
![]() | |
virtual CoreExport int | DoEnumDependentsImpl (DependentEnumProc *dep) |
Method to perform an enumeration on a ReferenceTarget. More... | |
virtual CoreExport | ~ReferenceTarget ()=0 |
Destructor. More... | |
![]() | |
virtual CoreExport | ~ReferenceMaker ()=0 |
Destructor. More... | |
void | BlockEval () |
Validates a given reference link between this reference maker and its reference target. More... | |
void | UnblockEval () |
Validates a given reference link between this reference maker and its reference target. More... | |
int | Evaluating () |
Validates a given reference link between this reference maker and its reference target. More... | |
CoreExport RefResult | StdNotifyRefChanged (const Interval &changeInt, RefTargetHandle hTarget, PartID partID, RefMessage message, BOOL propagate, NotifyDependentsOption notifyDependentsOption) |
Validates a given reference link between this reference maker and its reference target. More... | |
![]() | |
virtual CoreExport | ~Animatable ()=0 |
Destructor. More... | |
![]() | |
Noncopyable () | |
~Noncopyable () | |
![]() | |
CoreExport void | load_descriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, USHORT flag, va_list ap) |
![]() | |
virtual FPStatus | _dispatch_fn (FunctionID fid, TimeValue t, FPValue &result, FPParams *p) |
Additional Inherited Members | |
![]() | |
enum class | PauseSupport { None , Full , Legacy } |
Returns whether pause is supported by this renderer. More... | |
enum | Requirement { kRequirement_NoVFB = 1 , kRequirement_DontSaveRenderOutput = 2 , kRequirement_Wants32bitFPOutput = 3 , kRequirement_WantsObjectSelection = 4 , kRequirement_NoGBufferForToneOpPreview = 5 , kRequirement_SupportsConcurrentRendering = 6 } |
Returns true if the renderer has the given requirement, or returns false otherwise. More... | |
![]() | |
enum | LifetimeType { noRelease , immediateRelease , wantsRelease , serverControlled } |
![]() | |
static CoreExport BOOL | IsDeleted (Animatable *anim) |
Debug method to determine whether an object has been deleted. More... | |
static CoreExport AnimHandle | GetHandleByAnim (Animatable *anim) |
Get the unique handle for an Animatable object. More... | |
static CoreExport Animatable * | GetAnimByHandle (AnimHandle handle) |
Get an Animatable object from its unique handle. More... | |
static CoreExport AnimHandle | GetNextHandle () |
Get the unique handle for the next Animatable object to be created. More... | |
static CoreExport void | EnumerateAllAnimatables (EnumAnimList &enumProcObject) |
Enumerator to enumerate across all animatables. More... | |
static CoreExport bool | RegisterAppDataLoadCallback (const Class_ID &cid, SClass_ID sid, APPDATALOADPROC proc) |
Registers a callback proc that is called when an AppDataChunk is read from a scene file. More... | |
static CoreExport bool | UnRegisterAppDataLoadCallback (const Class_ID &cid, SClass_ID sid, APPDATALOADPROC proc) |
Unregisters a callback proc that is called when an AppDataChunk is read from a scene file. More... | |
static CoreExport bool | RegisterAppDataLoadCallback (DWORD sbid, APPDATALOADPROC proc) |
Registers a callback proc that is called when an AppDataChunk is read from a scene file. More... | |
static CoreExport bool | UnRegisterAppDataLoadCallback (DWORD sbid, APPDATALOADPROC proc) |
Unregisters a callback proc that is called when an AppDataChunk is read from a scene file. More... | |
static CoreExport int | RequestFlagBit () |
Requests an unique flag bit index. More... | |
static CoreExport void | ReleaseFlagBit (int index) |
Releases the flag bit index. More... | |
static CoreExport void | ClearFlagBitInAllAnimatables (int index) |
Clears the specified flag bit in all Animatables. More... | |
![]() | |
static UtilExport void * | operator new (size_t size) |
Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e) |
Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new (size_t size, const char *filename, int line) |
New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, int block_type, const char *filename, int line) |
New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, const char *filename, int line) |
New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new (size_t size, unsigned long flags) |
New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, unsigned long flags) |
New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new[] (size_t size) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new[] (size_t size, const char *filename, int line) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new[] (size_t size, int block_type, const char *filename, int line) |
New operator used to allocate arrays of objects. More... | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void * | operator new[] (size_t size, unsigned long flags) |
New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More... | |
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, unsigned long flags) |
New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More... | |
static UtilExport void | operator delete (void *ptr) |
Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e) |
Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete (void *ptr, const char *filename, int line) |
Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, int block_type, const char *filename, int line) |
Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete (void *ptr, unsigned long flags) |
Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags) |
Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete[] (void *ptr) |
Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e) |
Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete[] (void *ptr, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, int block_type, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More... | |
static UtilExport void | operator delete[] (void *ptr, unsigned long flags) |
Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags) |
Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More... | |
static UtilExport void * | operator new (size_t size, void *placement_ptr) |
Placement new operator. More... | |
static UtilExport void | operator delete (void *ptr, void *placement_ptr) |
Placement delete operator. More... | |
static UtilExport void * | aligned_malloc (size_t size, size_t alignment) |
Allocates memory on a specified alignment boundary. More... | |
static UtilExport void * | aligned_realloc (void *ptr, size_t size, size_t alignment) |
Reallocates memory on a specified alignment boundary. More... | |
static UtilExport void | aligned_free (void *ptr) |
Frees a block of memory that was allocated with aligned_malloc/aligned_realloc. More... | |
![]() | |
Interface_ID | ID |
MSTR | internal_name |
StringResID | description |
ClassDesc * | cd |
USHORT | flags |
Tab< FPFunctionDef * > | functions |
Tab< FPPropDef * > | props |
Tab< FPEnum * > | enumerations |
MSPluginClass * | pc |
Rollout * | rollout |
ActionTable * | action_table |
![]() | |
static const AnimHandle | kInvalidAnimHandle = 0 |
![]() | |
static CoreExport FPInterfaceDesc | nullInterface |
![]() | |
DWORD | aflag |
AnimPropertyList | aprops |
Unifies functionality for, both, interactive (ActiveShade) and offline (Production) rendering.
Base class for all class descriptors of plugins that derive from UnifiedRenderer.
This is the base class for any renderer plugin that wishes to use the Rendering API - which, ideally, should be the case for all renderer plugins going forward. This class implements most of the core rendering functionality, which is common to all renderers, and exposes a simplified mechanism based around render sessions. The responsibilities are as follows:
Many of the methods, inherited from class Renderer and others, are made explicitly final, as overriding them would jeopardize the foundations of this class' implementation. Other methods are made explicitly pure virtual to enforce their implementation by the plugin.
This class implements functionality and interfaces necessary for plugins that derive from UnifiedRenderer.
UnifiedRenderer | ( | ) |
|
virtual |
|
virtual |
|
pure virtual |
Returns a reference to the class descriptor that defines this renderer plugin.
The class descriptor must inherit from class UnifiedRenderer::ClassDescriptor, and must be implemented as a singleton.
|
pure virtual |
Creates a new render session, for offline (non-interactive) rendering.
sessionContext | The context in which the render session operates. This reference is guaranteed to be valid for the lifetime of the session, but may not be used beyond this. |
|
pure virtual |
Creates a new render session, for interactive (ActiveShade) rendering.
sessionContext | The context in which the render session operates. This reference is guaranteed to be valid for the lifetime of the session, but may not be used beyond this. |
|
pure virtual |
Returns whether this renderer supports interactive, that is: if an interactive render session can be created with CreateInteractiveSession().
This affects whether this renderer plugin will be offered as a choice of ActiveShade renderer.
Replaces ReferenceMaker::Load() for loading plugin-specific data.
ReferenceMaker::Load() is overridden and marked final to enforce that UnifiedRenderer be loaded in a certain way. This method is called by the implementation of Load() an should behave in an identical manner to ReferenceMaker::Load().
Replaces ReferenceMaker::Save() for loading plugin-specific data.
ReferenceMaker::Save() is overridden and marked final to enforce that UnifiedRenderer be saved in a certain way. This method is called by the implementation of Save() an should behave in an identical manner to ReferenceMaker::Save().
|
pure virtual |
Replaces Animatable::GetInterface(ULONG), which is implemented as final by UnifiedRenderer to enforce correct behaviour.
|
pure virtual |
Replaces InterfaceServer::GetInterface(Interface_ID), which is implemented as final by UnifiedRenderer to enforce correct behaviour.
|
pure virtual |
Enables the renderer to override the behaviour of per-object motion blur options.
class INode exposes properties to control how motion blur is to be processed for that object: image based, object based, or disabled entirely. Certain renderers may want to override these properties, especially if they do not support image-based motion blur - or simply to expose a global switch to avoid having to change the properties of all nodes in the scene.
|
finaloverridevirtual |
This method is final to enforce usage of the render session. All the data passed to this method is exposed through class IRenderSessionContext.
Implements Renderer.
|
finaloverridevirtual |
This method is final to enforce usage of the render session. All the data passed to this method is exposed through class IRenderSessionContext.
Implements Renderer.
|
finaloverridevirtual |
This method is final to enforce usage of the render session. All the data passed to this method is exposed through class IRenderSessionContext.
Implements Renderer.
|
finaloverridevirtual |
This method is final to enforce usage of the render session. It applies the render effects that are active in the current render session.
Reimplemented from Renderer.
|
finaloverridevirtual |
Implements Renderer.
|
overridepure virtual |
Returns whether the render supports the pause command (and button). See Renderer::IsPauseSupported().
Implements Renderer.
|
overridepure virtual |
Returns whether the render supports the pause command (and button). See Renderer::IsPauseSupported().
Implements Renderer.
|
finaloverridevirtual |
This method forwards to the render session. See IOfflineRenderSession::StopRendering().
Implements Renderer.
|
finaloverridevirtual |
This method forwards to the render session. See IOfflineRenderSession::PauseRendering().
Implements Renderer.
|
finaloverridevirtual |
This method forwards to the render session. See IOfflineRenderSession::ResumeRendering().
Implements Renderer.
|
overridepure virtual |
See Animatable::GetParamBlock(int).
Reimplemented from Animatable.
|
overridepure virtual |
See Animatable::GetParamBlock(int).
Reimplemented from Animatable.
|
overridepure virtual |
See Animatable::GetParamBlockByID(BlockID).
Reimplemented from Animatable.
|
overridevirtual |
See Renderer::ResetParams(). The default implementation resets all the parameter blocks.
Implements Renderer.
|
overridepure virtual |
Default implementation refuses radiosity and ray-tracer tabs, to enable only showing the renderer's own tabs.
Reimplemented from ITabDialogObject.
|
overridevirtual |
Default implementation refuses radiosity and ray-tracer tabs, to enable only showing the renderer's own tabs.
Reimplemented from ITabDialogObject.
|
overridevirtual |
Creates a new renderer plugin, cloned/copied from this one.
The default implementation creates a new instance of the renderer through the class descriptor, and clones all the references. The plugin may need to specialize this method, for example if it has data members to copy.
Reimplemented from ReferenceTarget.
|
overridevirtual |
This default implementation ignores all reference messages, as renderers typically don't need to react to them.
Implements ReferenceMaker.
This method is final to enable UnifiedRenderer to load its own data. Use Load_UnifiedRenderer() to load data in the sub-class.
Reimplemented from ReferenceMaker.
This method is final to enable UnifiedRenderer to load its own data. Use Save_UnifiedRenderer() to load data in the sub-class.
Reimplemented from ReferenceMaker.
|
overridepure virtual |
Made pure virtual to enforce implementation.
Reimplemented from ReferenceMaker.
|
pure virtual |
Made pure virtual to enforce implementation.
Reimplemented from ReferenceMaker.
|
pure virtual |
Made pure virtual to enforce implementation.
Reimplemented from ReferenceMaker.
|
finaloverridevirtual |
This method is final to enable UnifiedRenderer to expose its own interfaces correctly.
Use GetInterface_UnifiedRenderer(Interface_ID) to expose interfaces in the sub-class.
Reimplemented from ReferenceTarget.
|
finaloverridevirtual |
This method is final to enable UnifiedRenderer to expose its own interfaces correctly.
Use GetInterface_UnifiedRenderer(Interface_ID) to expose interfaces in the sub-class.
Reimplemented from BaseInterface.
|
finaloverridevirtual |
Call forwarded to class descriptor (see UnifiedRenderer::ClassDescriptor).
Reimplemented from Animatable.
|
finaloverridevirtual |
Returns RENDERER_CLASS_ID.
Reimplemented from Renderer.
Call forwarded to class descriptor (see UnifiedRenderer::ClassDescriptor).
Reimplemented from ReferenceTarget.
|
overridevirtual |
This default implementation returns the number of parameter blocks.
Reimplemented from Animatable.
This default implementation returns the name of the parameter block at index i.
Reimplemented from Animatable.
|
overridevirtual |
This default implementation returns the param block at index i.
Reimplemented from Animatable.
|
finaloverridevirtual |
Calls: "delete this" and performs cleanup.
Reimplemented from Animatable.
|
protectedpure virtual |
Returns whether the renderer supports interactive material editor sessions.
Material editor previews are rendered using offline render sessions. But to optimize the preview renders by avoiding a full re-initialization of the session and re-translation of the scene, the system implements a level of semi-interactive rendering. This is performed by keeping the render session alive between MEdit preview renders, allowing the re-use of translated scene elements from the last render, as well as removing the need for re-initializing the renderer. The translation mechanism works exactly the same as with an interactive render session, but is performed through the offline render session interface. Scene changes can therefore only occur between renders - no asynchronous changes may occur.
ClassDescriptor | ( | ) |
The constructor initializes IMtlRender_Compatibility_Renderer.
|
pure virtual |
Returns a new instance of the renderer plugin.
loading | True if the plugin is being created for loading purposes, in which case the plugin may skip any initialization steps that would be superfluous. |
|
overridevirtual |
This default implementation returns true.
|
finaloverridevirtual |
This method is final to enforce going through CreateRenderer().
|
finaloverridevirtual |
Returns RENDERER_CLASS_ID.
Reimplemented from Renderer.
|
overridevirtual |
This default implementation returns "Renderer".
|
overridepure virtual |
Made pure virtual to enforce implementation.
|
overridepure virtual |
Made pure virtual to enforce implementation.
Reimplemented from FPInterfaceDesc.
|
protectedvirtual |
Returns whether the given material class descriptor is that of a "wrapper" material, which would get resolved by BaseTranslator_INode::GetMaterial().
This is may be used by the implementation of IMtlRender_Compatibility_Renderer::IsCompatibleWithMtlBase() to flag wrapper materials as compatible.