Public Member Functions | Static Public Member Functions

MHWShaderSwatchGenerator Class Reference

Search for all occurrences

Detailed Description

Hardware shader swatch generator utility class.

Derived from the MSwatchRenderBase class as a utility for generating a swatch for a plugin hardware shader class. This class supports hardware shaders derived from both MPxHardwareShader and the older MPxHwShaderNode base classes.

#include <MHWShaderSwatchGenerator.h>

Inheritance diagram for MHWShaderSwatchGenerator:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 MHWShaderSwatchGenerator (MObject obj, MObject renderObj, int res)
 Class constructor.
virtual bool doIteration ()
 This method will be called from the MSwatchRenderRegister for generating a swatch image.

Static Public Member Functions

static MSwatchRenderBasecreateObj (MObject obj, MObject renderObj, int res)
 Class constructor.
static const MStringinitialize ()
 This method sets a swatch name, and registers a new swatch generator creation function for the swatch name.
static void getSwatchBackgroundColor (float &r, float &g, float &b, float &a)
 This method returns the default background color for the hardware rendered swatch.

Constructor & Destructor Documentation

MHWShaderSwatchGenerator ( MObject  obj,
MObject  renderObj,
int  res 
)

Class constructor.

Initializes base class

Parameters:
[in]objThe node object for which the swatch needs to be generated.
[in]renderObjThe node used to actually compute the swatch. In most situations, this can be the same as obj. This parameter can be used to request the computation of the swatch on another node, and display the swatch on the obj node.
[in]resThe expected resolution of the swatch image.

Member Function Documentation

MSwatchRenderBase * createObj ( MObject  obj,
MObject  renderObj,
int  resolution 
) [static]

Class constructor.

Saves the Node object and image resolution as data members for future use.

Parameters:
[in]objThe node object for which the swatch needs to be generated.
[in]renderObjThe node used to actually compute the swatch. In most situations, this can be the same as obj. This parameter can be used to request the computation of the swatch on another node, and display the swatch on the obj node.
[in]resolutionThe expected resolution of the swatch image.
Examples:
hlslPluginMain.cpp.
const MString & initialize ( ) [static]

This method sets a swatch name, and registers a new swatch generator creation function for the swatch name.

The string returned from this method can be used for node classification purpose.

Examples:
AshliPluginMain.cpp, hwColorPerVertexShader.cpp, hwPhongShader.cpp, and pluginMain.cpp.
void getSwatchBackgroundColor ( float &  r,
float &  g,
float &  b,
float &  a 
) [static]

This method returns the default background color for the hardware rendered swatch.

Parameters:
[out]rStorage variable for red component.
[out]gStorage variable for green component.
[out]bStorage variable for blue component.
[out]aStorage variable for alpha component.
Examples:
cgfxShaderNode.cpp, GLSLShaderNode.cpp, hlslShader.cpp, hwColorPerVertexShader.cpp, and hwPhongShader.cpp.
bool doIteration ( ) [virtual]

This method will be called from the MSwatchRenderRegister for generating a swatch image.

This doIteration function is called repeatedly (during idle events) till it returns true.

Reimplemented from MSwatchRenderBase.


MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator
MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator MHWShaderSwatchGenerator