This reference page is linked to from the following overview topics: 3DXI Materials and Textures.
Main interface for parsing a generic effect file.
This interface breaks down an effect file into a table of parameters, techniques and code. It provides a non format and compiler specific summary of an D3D Effect file. This allow the developer to break up an effect for recompiling and regenerating on another platform.
#include <IGameFX.h>
Public Types |
|
enum | EffectSource { kFile, kBuffer } |
Define the source of the effect data. More... |
|
enum | IGameFXProfile { kVSPS_20, kVSPS_2X, kVSPS_30 } |
The compile time option for the profile used in the shader. More... |
|
Public Member Functions |
|
virtual | ~IGameFX () |
Destructor. |
|
virtual bool | Initialize (const MaxSDK::AssetManagement::AssetUser &effect, EffectSource input)=0 |
Initialise the interface with the effect to
be decompiled. |
|
virtual bool | ParseData (Mtl *effectMtl)=0 |
Parse the effect file, providing the host
material as a source for parameter hook up. |
|
virtual const MCHAR * | GetError ()=0 |
virtual int | GetNumberOfProperties ()=0 |
The total number of properties in the
effect. |
|
virtual IGameFXProperty * | GetIGameFXProperty (int index)=0 |
Access to a specific parameter. |
|
virtual int | GetNumberOfTechniques ()=0 |
The total number of techniques in the
effect. |
|
virtual IGameFXTechnique * | GetIGameFXTechnique (int index)=0 |
Access to a specifc technique. |
|
virtual int | GetNumberOfFunctions ()=0 |
the total number of functions on the effect
|
|
virtual IGameFXFunction * | GetIGameFXFunction (int index)=0 |
Get the function from the index supplied.
|
|
virtual
const MaxSDK::AssetManagement::AssetUser & |
GetEffectFile ()=0 |
Access the filename of the effect used. This
will only provide a valid filename if kFile is used in Initialize.
|
enum EffectSource |
Define the source of the effect data.
enum IGameFXProfile |
The compile time option for the profile used in the shader.
virtual ~IGameFX | ( | ) | [inline, virtual] |
Destructor.
{;}
virtual bool Initialize | ( | const MaxSDK::AssetManagement::AssetUser & | effect, |
EffectSource | input | ||
) | [pure virtual] |
Initialise the interface with the effect to be decompiled.
virtual bool ParseData | ( | Mtl * | effectMtl | ) | [pure virtual] |
Parse the effect file, providing the host material as a source for parameter hook up.
virtual const MCHAR* GetError | ( | ) | [pure virtual] |
virtual int GetNumberOfProperties | ( | ) | [pure virtual] |
The total number of properties in the effect.
virtual IGameFXProperty* GetIGameFXProperty | ( | int | index | ) | [pure virtual] |
Access to a specific parameter.
virtual int GetNumberOfTechniques | ( | ) | [pure virtual] |
The total number of techniques in the effect.
virtual IGameFXTechnique* GetIGameFXTechnique | ( | int | index | ) | [pure virtual] |
Access to a specifc technique.
virtual int GetNumberOfFunctions | ( | ) | [pure virtual] |
the total number of functions on the effect
virtual IGameFXFunction* GetIGameFXFunction | ( | int | index | ) | [pure virtual] |
Get the function from the index supplied.
virtual const MaxSDK::AssetManagement::AssetUser& GetEffectFile | ( | ) | [pure virtual] |
Access the filename of the effect used. This will only provide a valid filename if kFile is used in Initialize.