Represents a custom renderer definition.
The MetaShaderRendererDef identifies the implementation of the shader for each of the renderers capable of using the shader, including the file location and name of the handler, and any renderer options (for example, the version number). Every ShaderDef must have at least one MetaShaderRendererDef defined (see ShaderDef::AddRendererDef).
#include <xsi_metashaderrendererdef.h>
Public Member Functions | |
MetaShaderRendererDef () | |
~MetaShaderRendererDef () | |
MetaShaderRendererDef (const CRef &in_ref) | |
MetaShaderRendererDef (const MetaShaderRendererDef &in_obj) | |
bool | IsA (siClassID in_ClassID) const |
siClassID | GetClassID () const |
MetaShaderRendererDef & | operator= (const MetaShaderRendererDef &in_obj) |
MetaShaderRendererDef & | operator= (const CRef &in_ref) |
CString | GetCodePath () |
CStatus | PutCodePath (const CString &in_codepath) |
CString | GetCodeText () |
CStatus | PutCodeText (const CString &in_codetext) |
ValueMap | GetRendererOptions () |
CString | GetSymbolName () |
CStatus | PutSymbolName (const CString &in_symbolname) |
Default constructor.
Default destructor.
MetaShaderRendererDef | ( | const CRef & | in_ref | ) |
Constructor.
in_ref | constant reference object. |
MetaShaderRendererDef | ( | const MetaShaderRendererDef & | in_obj | ) |
Copy constructor.
in_obj | constant class object. |
bool IsA | ( | siClassID | in_ClassID | ) | const [virtual] |
Returns true if a given class type is compatible with this API class.
in_ClassID | class type. |
Reimplemented from SIObject.
siClassID GetClassID | ( | ) | const [virtual] |
MetaShaderRendererDef& operator= | ( | const MetaShaderRendererDef & | in_obj | ) |
Creates an object from another object. The newly created object is set to empty if the input object is not compatible.
in_obj | constant class object. |
MetaShaderRendererDef& operator= | ( | const CRef & | in_ref | ) |
Creates an object from a reference object. The newly created object is set to empty if the input reference object is not compatible.
in_ref | constant class object. |
Reimplemented from SIObject.
CString GetCodePath | ( | ) |
Returns the file path of the shader code to execute (for example, "\Application\bin\nt-x86-64\sibase.dll"
or "{LIBS}/sibase.{EXT}"
. This is the same information as specified in the FileName
entry under the MetaShader > Renderer
section in a SPDL file.
Sets the file path of the shader code to execute (for example, "\Application\bin\nt-x86-64\sibase.dll"
or "{LIBS}/sibase.{EXT}"
. This is the same information as specified in the FileName
entry under the MetaShader > Renderer
section in a SPDL file.
in_codepath | the code path. |
CString GetCodeText | ( | ) |
Returns the text of the shader code to execute. This is the same as the embedded shader code specified between the "BeginText"
and "EndText"
block of the MetaShader > Renderer
section in a SPDL file.
Sets the text of the shader code to execute. This is the same as the embedded shader code specified between the "BeginText"
and "EndText"
block of the MetaShader > Renderer
section in a SPDL file.
in_codetext | the code text. |
ValueMap GetRendererOptions | ( | ) |
Returns the renderer's options as a ValueMap. This is the same information as specified in the Options
entry under the MetaShader > Renderer
section in a SPDL file.
CString GetSymbolName | ( | ) |
Returns the symbol name of the shader code to execute. The symbol name is the name of the procedure to execute (for example, "material-phong_cg"
is the symbol name for the Softimage Phong shader's Cg renderer). This is the same information as specified in the Name
entry under the MetaShader > Renderer
section in a SPDL file. The returned object is typically used for adding extra information to a shader renderer such as the version of a hardware shader (see siHWShaderVersionID).
Sets the symbol name of the shader code to execute. The symbol name is the name of the procedure to execute (for example, "material-phong_cg"
is the symbol name for the Softimage Phong shader's Cg renderer). This is the same information as specified in the Name
entry under the MetaShader > Renderer
section in a SPDL file.
in_symbolname | the symbol name. |