This reference page is linked to from the following overview topics: Mental Ray Classes, Translation of Texture Map and Materials, Advanced Parameter Translation, Translation of Object Plug-ins.
#include <imrShaderTranslation.h>

Classes |
|
| struct | AdditionalDependency |
Public Types |
|
| enum | Requirement { kReq_TangentBasisVectors = 0 } |
| typedef Tab< AdditionalDependency > | AdditionalDependencyTable |
Public Member Functions |
|
| virtual imrShader * | GetMRShader (imrShaderCreation &shaderCreation)=0 |
| virtual void | ReleaseMRShader ()=0 |
| virtual bool | NeedsAutomaticParamBlock2Translation ()=0 |
| virtual void | TranslateParameters (imrTranslation &translationInterface, imrShader *shader, TimeValue t, Interval &valid)=0 |
| virtual void | GetAdditionalReferenceDependencies (AdditionalDependencyTable &refTargets)=0 |
| virtual void | TranslateParameters_Advanced (imrAdvancedTranslation &advancedTranslation, TimeValue t, Interval &valid) |
| virtual bool | HasRequirement (Requirement requirement, TimeValue t, Interval &valid, void *arg=NULL) |
| virtual Interface_ID | GetID () |
| enum Requirement |
{
// This shader requires tangent basis vectors.
// The tangent basis vectors will be translated for the object on which
// this shader is used.
// Return true if the vectors are needed, false otherwise.
// The 't', and 'valid' parameters are not used.
// The 'arg' variable is a pointer to an 'int', to which to map channel
// to be used should be assigned.
kReq_TangentBasisVectors = 0,
};
| virtual imrShader* GetMRShader | ( | imrShaderCreation & | shaderCreation | ) | [pure virtual] |
| virtual void ReleaseMRShader | ( | ) | [pure virtual] |
| virtual bool NeedsAutomaticParamBlock2Translation | ( | ) | [pure virtual] |
| virtual void TranslateParameters | ( | imrTranslation & | translationInterface, |
| imrShader * | shader, | ||
| TimeValue | t, | ||
| Interval & | valid | ||
| ) | [pure virtual] |
| virtual void GetAdditionalReferenceDependencies | ( | AdditionalDependencyTable & | refTargets | ) | [pure virtual] |
| void TranslateParameters_Advanced | ( | imrAdvancedTranslation & | advancedTranslation, |
| TimeValue | t, | ||
| Interval & | valid | ||
| ) | [inline, virtual] |
{
// Default implementation does nothing
}
| bool HasRequirement | ( | Requirement | requirement, |
| TimeValue | t, | ||
| Interval & | valid, | ||
| void * | arg = NULL |
||
| ) | [inline, virtual] |
{
// Default implementation has no requirements
return 0;
}
| Interface_ID GetID | ( | ) | [inline, virtual] |
Reimplemented from BaseInterface.
Reimplemented in imrMaterialPhenomenonTranslation.
{
return IMRSHADERTRANSLATION_INTERFACE_ID;
}