Render pass implementation.
The MPxRenderPassImpl class is an abstract base class which provides a common interface for pass implementations. Extend this class to create custom pass implementations.
#include <MPxRenderPassImpl.h>
Public Types |
|
| enum |
PassTypeBit { kUInt8 = 0x1, kUInt16 = 0x2, kUInt32 = 0x4, kUInt64 = 0x8, kInt8 = 0x10, kInt16 = 0x20, kInt32 = 0x40, kInt64 = 0x80, kFloat16 = 0x100, kFloat32 = 0x200, kFloat64 = 0x400, kBit = 0x800, kOther = 0x1000 } |
|
Data types that implementation may support. More... |
|
| enum |
PassSemantic { kInvalidSemantic = 0, kColorSemantic, kVectorSemantic, kDirectionVectorSemantic, kDepthSemantic, kLabelSemantic, kMaskSemantic, kOtherSemantic } |
|
Description of the nature of the data stored in the frame buffer. More... |
|
| typedef unsigned int | PassTypeMask |
| Use to create a mask of PassTypeBit
types. |
|
Public Member Functions |
|
| MPxRenderPassImpl () | |
| Default constructor. |
|
| virtual | ~MPxRenderPassImpl () |
| Destructor. |
|
| virtual bool | isCompatible (const MString &renderer) const =0 |
| Called by Maya check whether this pass
implementation is compatible with the given renderer. |
|
| virtual PassTypeMask | typesSupported () const =0 |
| Called by Maya to determine which types are
supported by this pass. |
|
| virtual PassTypeBit | getDefaultType () const =0 |
| Called by Maya to determine the default type
for this pass. |
|
| virtual unsigned int | getNumChannels () const =0 |
| Called by Maya to get the number of channels
supported by this pass. |
|
| virtual PassSemantic | frameBufferSemantic () const =0 |
| Called by Maya to get the frame buffer
semantic. |
|
| virtual bool | perLightPassContributionSupported () const =0 |
| Called by Maya to determine if this pass
implementation supports per-light contributions defined by pass
contribution maps. |
|
Friends |
|
| class | MRenderPassDef |
| enum PassTypeBit |
Data types that implementation may support.
| enum PassSemantic |
Description of the nature of the data stored in the frame buffer.
| bool isCompatible | ( | const MString & | renderer | ) | const [pure virtual] |
Called by Maya check whether this pass implementation is compatible with the given renderer.
| [in] | renderer | The renderer to test compatibility against |
| PassTypeMask typesSupported | ( | ) | const [pure virtual] |
Called by Maya to determine which types are supported by this pass.
| PassTypeBit getDefaultType | ( | ) | const [pure virtual] |
Called by Maya to determine the default type for this pass.
| unsigned int getNumChannels | ( | ) | const [pure virtual] |
Called by Maya to get the number of channels supported by this pass.
| PassSemantic frameBufferSemantic | ( | ) | const [pure virtual] |
Called by Maya to get the frame buffer semantic.
The semantic is an enum that provides a hint on the nature of the data stored in the frame buffer. This hint may affect how the renderer interpolates and filters sample values.
| bool perLightPassContributionSupported | ( | ) | const [pure virtual] |
Called by Maya to determine if this pass implementation supports per-light contributions defined by pass contribution maps.