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.