|
|
|
ID3DXEffect Interface |
|
' ****************************************************************************************
' ID3DXEffect interface
' $IID_ID3DXEffect = GUID$("{0F0DCC9F-6152-4117-A933-FFAC29C43AA4}")
' ****************************************************************************************
' ****************************************************************************************
' Used to set and query effects, and to choose techniques. An effect object can contain
' multiple techniques to render the same effect.
' Remarks
' The ID3DXEffect interface is obtained by calling D3DXCreateEffect, D3DXCreateEffectFromFile,
' or D3DXCreateEffectFromResource.
' The LPD3DXEFFECT type is defined as a pointer to this interface.
' Interface Information
' Stock Implementation d3d9.dll
' Custom Implementation No
' Inherits from ID3DXBaseEffect
' Header d3dx9effect.h
' Import library d3dx9.lib
' Minimum operating systems Windows 98
' ****************************************************************************************
' ****************************************************************************************
'DECLARE_INTERFACE_(ID3DXEffect, ID3DXBaseEffect)
'{
' // ID3DXBaseEffect
' 0. STDMETHOD(QueryInterface)(THIS_ REFIID iid, LPVOID *ppv) PURE;
' 1. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
' 2. STDMETHOD_(ULONG, Release)(THIS) PURE;
' // Descs
' 3. STDMETHOD(GetDesc)(THIS_ ID3DXEffect_DESC* pDesc) PURE;
' 4. STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE hParameter, D3DXPARAMETER_DESC* pDesc) PURE;
' 5. STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE hTechnique, D3DXTECHNIQUE_DESC* pDesc) PURE;
' 6. STDMETHOD(GetPassDesc)(THIS_ D3DXHANDLE hPass, D3DXPASS_DESC* pDesc) PURE;
' 7. STDMETHOD(GetFunctionDesc)(THIS_ D3DXHANDLE hShader, D3DXFUNCTION_DESC* pDesc) PURE;
' // Handle operations
' 8. STDMETHOD_(D3DXHANDLE, GetParameter)(THIS_ D3DXHANDLE hParameter, UINT Index) PURE;
' 9. STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE hParameter, LPCSTR pName) PURE;
' 10. STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE hParameter, LPCSTR pSemantic) PURE;
' 11. STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE hParameter, UINT Index) PURE;
' 12. STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT Index) PURE;
' 13. STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ LPCSTR pName) PURE;
' 14. STDMETHOD_(D3DXHANDLE, GetPass)(THIS_ D3DXHANDLE hTechnique, UINT Index) PURE;
' 15. STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE hTechnique, LPCSTR pName) PURE;
' 16. STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT Index) PURE;
' 17. STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ LPCSTR pName) PURE;
' 18. STDMETHOD_(D3DXHANDLE, GetAnnotation)(THIS_ D3DXHANDLE hObject, UINT Index) PURE;
' 19. STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE hObject, LPCSTR pName) PURE;
' // Get/Set Parameters
' 20. STDMETHOD(SetValue)(THIS_ D3DXHANDLE hParameter, LPCVOID pData, UINT Bytes) PURE;
' 21. STDMETHOD(GetValue)(THIS_ D3DXHANDLE hParameter, LPVOID pData, UINT Bytes) PURE;
' 22. STDMETHOD(SetBool)(THIS_ D3DXHANDLE hParameter, BOOL b) PURE;
' 23. STDMETHOD(GetBool)(THIS_ D3DXHANDLE hParameter, BOOL* pb) PURE;
' 24. STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE hParameter, CONST BOOL* pb, UINT Count) PURE;
' 25. STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE hParameter, BOOL* pb, UINT Count) PURE;
' 26. STDMETHOD(SetInt)(THIS_ D3DXHANDLE hParameter, INT n) PURE;
' 27. STDMETHOD(GetInt)(THIS_ D3DXHANDLE hParameter, INT* pn) PURE;
' 28. STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE hParameter, CONST INT* pn, UINT Count) PURE;
' 29. STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE hParameter, INT* pn, UINT Count) PURE;
' 30. STDMETHOD(SetFloat)(THIS_ D3DXHANDLE hParameter, FLOAT f) PURE;
' 31. STDMETHOD(GetFloat)(THIS_ D3DXHANDLE hParameter, FLOAT* pf) PURE;
' 32. STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE hParameter, CONST FLOAT* pf, UINT Count) PURE;
' 33. STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE hParameter, FLOAT* pf, UINT Count) PURE;
' 34. STDMETHOD(SetVector)(THIS_ D3DXHANDLE hParameter, CONST D3DXVECTOR4* pVector) PURE;
' 35. STDMETHOD(GetVector)(THIS_ D3DXHANDLE hParameter, D3DXVECTOR4* pVector) PURE;
' 36. STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE hParameter, CONST D3DXVECTOR4* pVector, UINT Count) PURE;
' 37. STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE hParameter, D3DXVECTOR4* pVector, UINT Count) PURE;
' 38. STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE hParameter, CONST D3DXMATRIX* pMatrix) PURE;
' 39. STDMETHOD(GetMatrix)(THIS_ D3DXHANDLE hParameter, D3DXMATRIX* pMatrix) PURE;
' 40. STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE hParameter, CONST D3DXMATRIX* pMatrix, UINT Count) PURE;
' 41. STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE hParameter, D3DXMATRIX* pMatrix, UINT Count) PURE;
' 42. STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE hParameter, CONST D3DXMATRIX** ppMatrix, UINT Count) PURE;
' 43. STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE hParameter, D3DXMATRIX** ppMatrix, UINT Count) PURE;
' 44. STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE hParameter, CONST D3DXMATRIX* pMatrix) PURE;
' 45. STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE hParameter, D3DXMATRIX* pMatrix) PURE;
' 46. STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE hParameter, CONST D3DXMATRIX* pMatrix, UINT Count) PURE;
' 47. STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE hParameter, D3DXMATRIX* pMatrix, UINT Count) PURE;
' 48. STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE hParameter, CONST D3DXMATRIX** ppMatrix, UINT Count) PURE;
' 49. STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE hParameter, D3DXMATRIX** ppMatrix, UINT Count) PURE;
' 50. STDMETHOD(SetString)(THIS_ D3DXHANDLE hParameter, LPCSTR pString) PURE;
' 51. STDMETHOD(GetString)(THIS_ D3DXHANDLE hParameter, LPCSTR* ppString) PURE;
' 52. STDMETHOD(SetTexture)(THIS_ D3DXHANDLE hParameter, LPDIRECT3DBASETEXTURE9 pTexture) PURE;
' 53. STDMETHOD(GetTexture)(THIS_ D3DXHANDLE hParameter, LPDIRECT3DBASETEXTURE9 *ppTexture) PURE;
' 54. STDMETHOD(SetPixelShader)(THIS_ D3DXHANDLE hParameter, LPDIRECT3DPIXELSHADER9 pPShader) PURE;
' 55. STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE hParameter, LPDIRECT3DPIXELSHADER9 *ppPShader) PURE;
' 56. STDMETHOD(SetVertexShader)(THIS_ D3DXHANDLE hParameter, LPDIRECT3DVERTEXSHADER9 pVShader) PURE;
' 57. STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE hParameter, LPDIRECT3DVERTEXSHADER9 *ppVShader) PURE;
' //Set Range of an Array to pass to device
' //Usefull for sending only a subrange of an array down to the device
' 58. STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE hParameter, UINT uStart, UINT uEnd) PURE;
' // ID3DXBaseEffect
' // Pool
' 59. STDMETHOD(GetPool)(THIS_ LPD3DXEFFECTPOOL* ppPool) PURE;
' // Selecting and setting a technique
' 60. STDMETHOD(SetTechnique)(THIS_ D3DXHANDLE hTechnique) PURE;
' 61. STDMETHOD_(D3DXHANDLE, GetCurrentTechnique)(THIS) PURE;
' 62. STDMETHOD(ValidateTechnique)(THIS_ D3DXHANDLE hTechnique) PURE;
' 63. STDMETHOD(FindNextValidTechnique)(THIS_ D3DXHANDLE hTechnique, D3DXHANDLE *pTechnique) PURE;
' 64. STDMETHOD_(BOOL, IsParameterUsed)(THIS_ D3DXHANDLE hParameter, D3DXHANDLE hTechnique) PURE;
' // Using current technique
' // Begin starts active technique
' // BeginPass begins a pass
' // CommitChanges updates changes to any set calls in the pass. This should be called before
' // any DrawPrimitive call to d3d
' // EndPass ends a pass
' // End ends active technique
' 65. STDMETHOD(Begin)(THIS_ UINT *pPasses, DWORD Flags) PURE;
' 66. STDMETHOD(BeginPass)(THIS_ UINT Pass) PURE;
' 67. STDMETHOD(CommitChanges)(THIS) PURE;
' 68. STDMETHOD(EndPass)(THIS) PURE;
' 69. STDMETHOD(End)(THIS) PURE;
' // Managing D3D Device
' 70. STDMETHOD(GetDevice)(THIS_ LPDIRECT3DDEVICE9* ppDevice) PURE;
' 71. STDMETHOD(OnLostDevice)(THIS) PURE;
' 72. STDMETHOD(OnResetDevice)(THIS) PURE;
' // Logging device calls
' 73. STDMETHOD(SetStateManager)(THIS_ LPD3DXEFFECTSTATEMANAGER pManager) PURE;
' 74. STDMETHOD(GetStateManager)(THIS_ LPD3DXEFFECTSTATEMANAGER *ppManager) PURE;
' // Parameter blocks
' 75. STDMETHOD(BeginParameterBlock)(THIS) PURE;
' 76. STDMETHOD_(D3DXHANDLE, EndParameterBlock)(THIS) PURE;
' 77. STDMETHOD(ApplyParameterBlock)(THIS_ D3DXHANDLE hParameterBlock) PURE;
' // Cloning
' 78. STDMETHOD(CloneEffect)(THIS_ LPDIRECT3DDEVICE9 pDevice, LPD3DXEFFECT* ppEffect) PURE;
'};
' ****************************************************************************************
' ****************************************************************************************
' GetPool
' Gets a pointer to the pool of shared parameters.
' HRESULT GetPool(
' LPD3DXEFFECTPOOL* ppPool
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_GetPool ALIAS "ID3DXEffect_GetPool" ( _
BYVAL pthis AS DWORD PTR, BYREF ppPool AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[59] USING ID3DXEffect_GetPool(pthis, ppPool) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetTechnique
' Sets the active technique.
' HRESULT SetTechnique(
' D3DXHANDLE hTechnique
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_SetTechnique ALIAS "ID3DXEffect_SetTechnique" ( _
BYVAL pthis AS DWORD PTR, BYVAL hTechnique AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[60] USING ID3DXEffect_SetTechnique(pthis, hTechnique) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetCurrentTechnique
' Gets the current technique.
' D3DXHANDLE GetCurrentTechnique(VOID);
' ****************************************************************************************
FUNCTION ID3DXEffect_GetCurrentTechnique ALIAS "ID3DXEffect_GetCurrentTechnique" (BYVAL pthis AS DWORD PTR) EXPORT AS DWORD
LOCAL DWRESULT AS DWORD
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[61] USING ID3DXEffect_GetCurrentTechnique(pthis) TO DWRESULT
FUNCTION = DWRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' ValidateTechnique
' Validate a technique.
' HRESULT ValidateTechnique(
' D3DXHANDLE hTechnique
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_ValidateTechnique ALIAS "ID3DXEffect_ValidateTechnique" ( _
BYVAL pthis AS DWORD PTR, BYVAL hTechnique AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[62] USING ID3DXEffect_ValidateTechnique(pthis, hTechnique) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' FindNextValidTechnique
' Searches for the next valid technique, starting at the technique after the specified
' technique.
' HRESULT FindNextValidTechnique(
' D3DXHANDLE hTechnique,
' D3DXHANDLE* pTechnique
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_FindNextValidTechnique ALIAS "ID3DXEffect_FindNextValidTechnique" ( _
BYVAL pthis AS DWORD PTR, BYVAL hTechnique AS DWORD, BYREF pTechnique AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[63] USING ID3DXEffect_FindNextValidTechnique(pthis, hTechnique, pTechnique) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' IsParameterUsed
' Determines if a parameter is used by the technique.
' BOOL IsParameterUsed(
' D3DXHANDLE hParameter,
' D3DXHANDLE hTechnique
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_IsParameterUsed ALIAS "ID3DXEffect_IsParameterUsed" ( _
BYVAL pthis AS DWORD PTR, BYVAL hParameter AS DWORD, BYVAL hTechnique AS DWORD) EXPORT AS LONG
LOCAL LRESULT AS LONG
IF pthis = %NULL THEN EXIT FUNCTION
CALL DWORD @@pthis[64] USING ID3DXEffect_IsParameterUsed(pthis, hParameter, hTechnique) TO LRESULT
FUNCTION = LRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' Begin
' Starts an active technique.
' HRESULT Begin(
' UINT* pPasses,
' DWORD Flags
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_Begin ALIAS "ID3DXEffect_Begin" ( _
BYVAL pthis AS DWORD PTR, BYVAL pPasses AS DWORD, BYVAL Flags AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[65] USING ID3DXEffect_Begin(pthis, pPasses, Flags) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' BeginPass
' Begins a pass, within the active technique.
' HRESULT BeginPass(
' UINT Pass
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_BeginPass ALIAS "ID3DXEffect_BeginPass" ( _
BYVAL pthis AS DWORD PTR, BYVAL Pass AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[66] USING ID3DXEffect_BeginPass(pthis, Pass) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' CommitChanges
' Propagate state changes that occur inside of an active pass to the device before
' rendering.
' HRESULT CommitChanges();
' ****************************************************************************************
FUNCTION ID3DXEffect_CommitChanges ALIAS "ID3DXEffect_CommitChanges" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[67] USING ID3DXEffect_CommitChanges(pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' EndPass
' End an active pass.
' HRESULT EndPass();
' ****************************************************************************************
FUNCTION ID3DXEffect_EndPass ALIAS "ID3DXEffect_EndPass" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[68] USING ID3DXEffect_EndPass(pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' End
' Ends an active technique.
' HRESULT End();
' ****************************************************************************************
FUNCTION ID3DXEffect_End ALIAS "ID3DXEffect_End" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[69] USING ID3DXEffect_End(pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetDevice method
' Retrieves the device associated with the effect.
' HRESULT GetDevice(
' LPDIRECT3DDEVICE9* ppDevice
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_GetDevice ALIAS "ID3DXEffect_GetDevice" ( _
BYVAL pthis AS DWORD PTR, BYREF ppDevice AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[70] USING ID3DXEffect_GetDevice(pthis, ppDevice) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' OnLostDevice method
' Releases all references to video memory resources and deletes all state blocks.
' HRESULT OnLostDevice();
' ****************************************************************************************
FUNCTION ID3DXEffect_OnLostDevice ALIAS "ID3DXEffect_OnLostDevice" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[71] USING ID3DXEffect_OnLostDevice (pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' OnResetDevice method
' Should be called after the device has been reset.
' HRESULT OnResetDevice();
' ****************************************************************************************
FUNCTION ID3DXEffect_OnResetDevice ALIAS "ID3DXEffect_OnResetDevice" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[72] USING ID3DXEffect_OnResetDevice (pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetStateManager method
' Set the effect state manager.
' HRESULT SetStateManager(
' LPD3DXEFFECTSTATEMANAGER pManager
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_SetStateManager ALIAS "ID3DXEffect_SetStateManager" ( _
BYVAL pthis AS DWORD PTR, BYVAL pManager AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[73] USING ID3DXEffect_SetStateManager (pthis, pManager) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetStateManager method
' Get the effect state manager.
' HRESULT GetStateManager(
' LPD3DXEFFECTSTATEMANAGER* ppManager
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_GetStateManager ALIAS "ID3DXEffect_GetStateManager" ( _
BYVAL pthis AS DWORD PTR, BYVAL ppManager AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[74] USING ID3DXEffect_GetStateManager (pthis, ppManager) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' BeginParameterBlock method
' Capture parameter effect state changes.
' HRESULT BeginParameterBlock();
' ****************************************************************************************
FUNCTION ID3DXEffect_BeginParameterBlock ALIAS "ID3DXEffect_BeginParameterBlock" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[75] USING ID3DXEffect_BeginParameterBlock (pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' EndParameterBlock method
' Stop capturing effect parameter state changes.
' D3DXHANDLE EndParameterBlock();
' ****************************************************************************************
FUNCTION ID3DXEffect_EndParameterBlock ALIAS "ID3DXEffect_EndParameterBlock" (BYVAL pthis AS DWORD PTR) EXPORT AS DWORD
LOCAL DWRESULT AS DWORD
IF pthis = %NULL THEN EXIT FUNCTION
CALL DWORD @@pthis[76] USING ID3DXEffect_EndParameterBlock (pthis) TO DWRESULT
FUNCTION = DWRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' ApplyParameterBlock method
' Assign a state value to each effect parameter in a parameter block.
' HRESULT ApplyParameterBlock(
' D3DXHANDLE hParameterBlock
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_ApplyParameterBlock ALIAS "ID3DXEffect_ApplyParameterBlock" ( _
BYVAL pthis AS DWORD PTR, BYVAL hParameterBlock AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[77] USING ID3DXEffect_ApplyParameterBlock (pthis, hParameterBlock) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' CloneEffect method
' Creates a clone of an effect.
' HRESULT CloneEffect(
' LPDIRECT3DDEVICE9 pDevice,
' LPD3DXEFFECT* ppEffect
' );
' ****************************************************************************************
FUNCTION ID3DXEffect_CloneEffect ALIAS "ID3DXEffect_CloneEffect" ( _
BYVAL pthis AS DWORD PTR, BYVAL pDevice AS DWORD, BYREF ppEffect AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[78] USING ID3DXEffect_CloneEffect (pthis, pDevice, ppEffect) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
|
Page last updated on Wednesday, 15 March 2006 00:35:59 +0100