This reference page is linked to from the following overview topics: Mental Ray Classes, Translation of Texture Map and Materials.
#include <imrShaderClassDesc.h>

Public Types |
|
| enum |
ApplyFlags { kApplyFlag_Lens = (1 << kApply_Lens), kApplyFlag_Material = (1 << kApply_Material), kApplyFlag_Light = (1 << kApply_Light), kApplyFlag_Shadow = (1 << kApply_Shadow), kApplyFlag_Environment = (1 << kApply_Environment), kApplyFlag_Volume = (1 << kApply_Volume), kApplyFlag_Texture = (1 << kApply_Texture), kApplyFlag_Photon = (1 << kApply_Photon), kApplyFlag_Geometry = (1 << kApply_Geometry), kApplyFlag_Displace = (1 << kApply_Displace), kApplyFlag_PhotonEmitter = (1 << kApply_PhotonEmitter), kApplyFlag_Output = (1 << kApply_Output), kApplyFlag_LightMap = (1 << kApply_LightMap), kApplyFlag_PhotonVol = (1 << kApply_PhotonVol), kApplyFlag_Other = (1 << kApply_Other), kApplyFlag_Bump = (1 << kApply_Bump), kApplyFlag_ContourShader = (1 << kApply_ContourShader), kApplyFlag_ContourStore = (1 << kApply_ContoutStore), kApplyFlag_ContourContrast = (1 << kApply_ContourContrast), kApplyFlag_ContourOutput = (1 << kApply_ContourOutput), kApplyFlag_Illum = (1 << kApply_Illum), kApplyFlag_PassMerge = (1 << kApply_PassMerge), kApplyFlag_MtlPhen = (1 << kApply_MtlPhen), kApplyFlag_All = (~0 & ~kApplyFlag_MtlPhen), kApplyFlag_Default = (kApplyFlag_Material | kApplyFlag_Texture | kApplyFlag_Illum | kApplyFlag_Bump) } |
Public Member Functions |
|
| virtual imrShader * | CreateShader (bool loading=false)=0 |
| virtual unsigned int | GetApplyTypes ()=0 |
| virtual mrShaderDesc & | GetShaderDesc ()=0 |
| virtual ParamBlockDesc2 * | GetParamPBDesc ()=0 |
| virtual Tab< ParamBlockDesc2 * > & | GetParamSubPBDescs ()=0 |
| virtual ParamBlockDesc2 * | GetResultPBDesc ()=0 |
| virtual Tab< ParamBlockDesc2 * > & | GetResultPBDescs ()=0 |
| virtual ParamBlockDesc2 * | GetConnectionPBDesc ()=0 |
| virtual Tab< ParamBlockDesc2 * > & | GetConnectionSubPBDescs ()=0 |
| virtual IAutoMParamDlg * | CreateShaderParamDlgs (HWND hwMtlEdit, IMtlParams *imp, ReferenceTarget *obj)=0 |
| enum ApplyFlags |
{
// Types defined by the mental ray API
kApplyFlag_Lens = (1 << kApply_Lens),
kApplyFlag_Material = (1 << kApply_Material),
kApplyFlag_Light = (1 << kApply_Light),
kApplyFlag_Shadow = (1 << kApply_Shadow),
kApplyFlag_Environment = (1 << kApply_Environment),
kApplyFlag_Volume = (1 << kApply_Volume),
kApplyFlag_Texture = (1 << kApply_Texture),
kApplyFlag_Photon = (1 << kApply_Photon),
kApplyFlag_Geometry = (1 << kApply_Geometry),
kApplyFlag_Displace = (1 << kApply_Displace),
kApplyFlag_PhotonEmitter = (1 << kApply_PhotonEmitter),
kApplyFlag_Output = (1 << kApply_Output),
kApplyFlag_LightMap = (1 << kApply_LightMap),
kApplyFlag_PhotonVol = (1 << kApply_PhotonVol),
kApplyFlag_Other = (1 << kApply_Other),
// Additional types defined by the GUI attributes
//kApply_None, // Probably better remove this...
kApplyFlag_Bump = (1 << kApply_Bump),
kApplyFlag_ContourShader = (1 << kApply_ContourShader),
kApplyFlag_ContourStore = (1 << kApply_ContoutStore),
kApplyFlag_ContourContrast = (1 << kApply_ContourContrast),
kApplyFlag_ContourOutput = (1 << kApply_ContourOutput),
kApplyFlag_Illum = (1 << kApply_Illum),
kApplyFlag_PassMerge = (1 << kApply_PassMerge),
kApplyFlag_MtlPhen = (1 << kApply_MtlPhen),
// All except mtl phenomenon
kApplyFlag_All = (~0 & ~kApplyFlag_MtlPhen),
// Default type accepts texure, material, illum, bump
kApplyFlag_Default = (kApplyFlag_Material | kApplyFlag_Texture | kApplyFlag_Illum | kApplyFlag_Bump),
};
| virtual imrShader* CreateShader | ( | bool | loading = false |
) | [pure virtual] |
| virtual unsigned int GetApplyTypes | ( | ) | [pure virtual] |
| virtual mrShaderDesc& GetShaderDesc | ( | ) | [pure virtual] |
| virtual ParamBlockDesc2* GetParamPBDesc | ( | ) | [pure virtual] |
| virtual Tab<ParamBlockDesc2*>& GetParamSubPBDescs | ( | ) | [pure virtual] |
| virtual ParamBlockDesc2* GetResultPBDesc | ( | ) | [pure virtual] |
| virtual Tab<ParamBlockDesc2*>& GetResultPBDescs | ( | ) | [pure virtual] |
| virtual ParamBlockDesc2* GetConnectionPBDesc | ( | ) | [pure virtual] |
| virtual Tab<ParamBlockDesc2*>& GetConnectionSubPBDescs | ( | ) | [pure virtual] |
| virtual IAutoMParamDlg* CreateShaderParamDlgs | ( | HWND | hwMtlEdit, |
| IMtlParams * | imp, | ||
| ReferenceTarget * | obj | ||
| ) | [pure virtual] |