Win32 API 日本語リファレンス
ホームGraphics.Direct3D10 › ID3D10Effect

ID3D10Effect

COM
IID51b0ca8b-ec0b-4519-870d-8ee1cb5017c7継承元IUnknown自前メソッド開始 vtbl3

メソッド 13

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 BOOL IsValid()
vtbl 4 BOOL IsPool()
vtbl 5 HRESULT GetDevice(ID3D10Device** ppDevice)
ppDeviceID3D10Device**outこのエフェクトに関連付けられたデバイスを受け取る ID3D10Device ポインタのアドレス。参照カウントが増える。
vtbl 6 HRESULT GetDesc(D3D10_EFFECT_DESC* pDesc)
pDescD3D10_EFFECT_DESC*outエフェクト全体の記述を受け取る D3D10_EFFECT_DESC 構造体へのポインタ。定数バッファ数や変数数等が格納される。
vtbl 7 ID3D10EffectConstantBuffer* GetConstantBufferByIndex(DWORD Index)
IndexDWORDin取得する定数バッファを示すゼロ基点のインデックス。
vtbl 8 ID3D10EffectConstantBuffer* GetConstantBufferByName(LPSTR Name)
NameLPSTRin取得する定数バッファの名前を指す NULL 終端 ANSI 文字列。
vtbl 9 ID3D10EffectVariable* GetVariableByIndex(DWORD Index)
IndexDWORDin取得するグローバル変数を示すゼロ基点のインデックス。
vtbl 10 ID3D10EffectVariable* GetVariableByName(LPSTR Name)
NameLPSTRin取得するグローバル変数の名前を指す NULL 終端 ANSI 文字列。
vtbl 11 ID3D10EffectVariable* GetVariableBySemantic(LPSTR Semantic)
SemanticLPSTRin取得する変数のセマンティクスを指す NULL 終端 ANSI 文字列。
vtbl 12 ID3D10EffectTechnique* GetTechniqueByIndex(DWORD Index)
IndexDWORDin取得するテクニックを示すゼロ基点のインデックス。
vtbl 13 ID3D10EffectTechnique* GetTechniqueByName(LPSTR Name)
NameLPSTRin取得するテクニックの名前を指す NULL 終端 ANSI 文字列。
vtbl 14 HRESULT Optimize()
vtbl 15 BOOL IsOptimized()

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ID3D10Effect "{51B0CA8B-EC0B-4519-870D-8EE1CB5017C7}"
#usecom global ID3D10Effect IID_ID3D10Effect "{}"
#comfunc global ID3D10Effect_IsValid                   3
#comfunc global ID3D10Effect_IsPool                    4
#comfunc global ID3D10Effect_GetDevice                 5 sptr
#comfunc global ID3D10Effect_GetDesc                   6 var
#comfunc global ID3D10Effect_GetConstantBufferByIndex  7 int
#comfunc global ID3D10Effect_GetConstantBufferByName   8 str
#comfunc global ID3D10Effect_GetVariableByIndex        9 int
#comfunc global ID3D10Effect_GetVariableByName         10 str
#comfunc global ID3D10Effect_GetVariableBySemantic     11 str
#comfunc global ID3D10Effect_GetTechniqueByIndex       12 int
#comfunc global ID3D10Effect_GetTechniqueByName        13 str
#comfunc global ID3D10Effect_Optimize                  14
#comfunc global ID3D10Effect_IsOptimized               15
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。