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

IDirect3DDevice9Ex

COM
IIDb18b10ce-2649-405a-870f-95f777d4313a継承元IDirect3DDevice9自前メソッド開始 vtbl119

メソッド 15

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

vtbl 119 HRESULT SetConvolutionMonoKernel(DWORD width, DWORD height, FLOAT* rows, FLOAT* columns)
widthDWORDinコンボリューションカーネルの幅(要素数)。
heightDWORDinコンボリューションカーネルの高さ(要素数)。
rowsFLOAT*inout行方向の重み係数を示すFLOAT配列へのポインタ。
columnsFLOAT*inout列方向の重み係数を示すFLOAT配列へのポインタ。
vtbl 120 HRESULT ComposeRects(IDirect3DSurface9* pSrc, IDirect3DSurface9* pDst, IDirect3DVertexBuffer9* pSrcRectDescs, DWORD NumRects, IDirect3DVertexBuffer9* pDstRectDescs, D3DCOMPOSERECTSOP Operation, INT Xoffset, INT Yoffset)
pSrcIDirect3DSurface9*in合成元の矩形群を含むソースサーフェスへのポインタ。
pDstIDirect3DSurface9*in合成先のデスティネーションサーフェスへのポインタ。
pSrcRectDescsIDirect3DVertexBuffer9*in元矩形の記述を格納した頂点バッファへのポインタ。
NumRectsDWORDin合成する矩形の個数。
pDstRectDescsIDirect3DVertexBuffer9*in先矩形の記述を格納した頂点バッファへのポインタ。NULL可。
OperationD3DCOMPOSERECTSOPin合成演算の種別を示すD3DCOMPOSERECTSOP。COPYやANDなど。
XoffsetINTin合成先に適用するX方向のオフセット(ピクセル)。
YoffsetINTin合成先に適用するY方向のオフセット(ピクセル)。
vtbl 121 HRESULT PresentEx(RECT* pSourceRect, RECT* pDestRect, HWND hDestWindowOverride, RGNDATA* pDirtyRegion, DWORD dwFlags)
pSourceRectRECT*in転送元の矩形へのポインタ。NULLで全体。
pDestRectRECT*in転送先の矩形へのポインタ。NULLで全体。
hDestWindowOverrideHWNDin表示先を上書きするウィンドウハンドル。NULLで既定。
pDirtyRegionRGNDATA*in更新領域を示すRGNDATAへのポインタ。NULLで全体。
dwFlagsDWORDin表示動作を示すフラグ。D3DPRESENT_DONOTWAITなど。
vtbl 122 HRESULT GetGPUThreadPriority(INT* pPriority)
pPriorityINT*inout現在のGPUスレッド優先度を受け取るINTポインタ。
vtbl 123 HRESULT SetGPUThreadPriority(INT Priority)
PriorityINTin設定するGPUスレッド優先度。-7〜7の範囲を指定する。
vtbl 124 HRESULT WaitForVBlank(DWORD iSwapChain)
iSwapChainDWORDin待機対象スワップチェーンの0始まりのインデックス。
vtbl 125 HRESULT CheckResourceResidency(IDirect3DResource9** pResourceArray, DWORD NumResources)
pResourceArrayIDirect3DResource9**out常駐確認するリソースの配列(IDirect3DResource9ポインタ配列)。
NumResourcesDWORDinpResourceArrayの要素数。
vtbl 126 HRESULT SetMaximumFrameLatency(DWORD MaxLatency)
MaxLatencyDWORDin許容する最大フレーム遅延数(キュー可能フレーム数)。
vtbl 127 HRESULT GetMaximumFrameLatency(DWORD* pMaxLatency)
pMaxLatencyDWORD*inout現在の最大フレーム遅延数を受け取るDWORDポインタ。
vtbl 128 HRESULT CheckDeviceState(HWND hDestinationWindow)
hDestinationWindowHWNDin状態を確認する対象の表示先ウィンドウハンドル。
vtbl 129 HRESULT CreateRenderTargetEx(DWORD Width, DWORD Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, BOOL Lockable, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle, DWORD Usage)
WidthDWORDinレンダーターゲットの幅(ピクセル)。
HeightDWORDinレンダーターゲットの高さ(ピクセル)。
FormatD3DFORMATinサーフェスのD3DFORMATフォーマット。
MultiSampleD3DMULTISAMPLE_TYPEinマルチサンプリングの種別を示すD3DMULTISAMPLE_TYPE。
MultisampleQualityDWORDinマルチサンプル品質レベル(0始まり)。
LockableBOOLinサーフェスをロック可能にするか。TRUEでロック可。
ppSurfaceIDirect3DSurface9**out作成されたレンダーターゲットサーフェスのポインタを受け取る出力。
pSharedHandleHANDLE*inout共有リソース用ハンドルのポインタ。通常はNULL。
UsageDWORDin追加用途を示すフラグ。D3DUSAGE値を指定する。
vtbl 130 HRESULT CreateOffscreenPlainSurfaceEx(DWORD Width, DWORD Height, D3DFORMAT Format, D3DPOOL Pool, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle, DWORD Usage)
WidthDWORDinサーフェスの幅(ピクセル)。
HeightDWORDinサーフェスの高さ(ピクセル)。
FormatD3DFORMATinサーフェスのD3DFORMATフォーマット。
PoolD3DPOOLinリソースの管理プールを示すD3DPOOL。
ppSurfaceIDirect3DSurface9**out作成されたオフスクリーンサーフェスのポインタを受け取る出力。
pSharedHandleHANDLE*inout共有リソース用ハンドルのポインタ。通常はNULL。
UsageDWORDin追加用途を示すフラグ。D3DUSAGE値を指定する。
vtbl 131 HRESULT CreateDepthStencilSurfaceEx(DWORD Width, DWORD Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, BOOL Discard, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle, DWORD Usage)
WidthDWORDin深度ステンシルサーフェスの幅(ピクセル)。
HeightDWORDin深度ステンシルサーフェスの高さ(ピクセル)。
FormatD3DFORMATin深度ステンシルのD3DFORMATフォーマット。
MultiSampleD3DMULTISAMPLE_TYPEinマルチサンプリングの種別を示すD3DMULTISAMPLE_TYPE。
MultisampleQualityDWORDinマルチサンプル品質レベル(0始まり)。
DiscardBOOLinPresent後に内容を破棄してよいか。TRUEで破棄可。
ppSurfaceIDirect3DSurface9**out作成された深度ステンシルサーフェスのポインタを受け取る出力。
pSharedHandleHANDLE*inout共有リソース用ハンドルのポインタ。通常はNULL。
UsageDWORDin追加用途を示すフラグ。D3DUSAGE値を指定する。
vtbl 132 HRESULT ResetEx(D3DPRESENT_PARAMETERS* pPresentationParameters, D3DDISPLAYMODEEX* pFullscreenDisplayMode)
pPresentationParametersD3DPRESENT_PARAMETERS*inoutリセット時に適用する新しいD3DPRESENT_PARAMETERSへのポインタ。
pFullscreenDisplayModeD3DDISPLAYMODEEX*inout全画面時の表示モードを示すD3DDISPLAYMODEEXへのポインタ。ウィンドウ時NULL。
vtbl 133 HRESULT GetDisplayModeEx(DWORD iSwapChain, D3DDISPLAYMODEEX* pMode, D3DDISPLAYROTATION* pRotation)
iSwapChainDWORDin対象スワップチェーンの0始まりのインデックス。
pModeD3DDISPLAYMODEEX*inout現在の拡張表示モードを受け取るD3DDISPLAYMODEEXへのポインタ。
pRotationD3DDISPLAYROTATION*inout現在の画面回転状態を受け取るD3DDISPLAYROTATIONポインタ。NULL可。

HSP用 COM定義

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

出力引数:
#define global IID_IDirect3DDevice9Ex "{B18B10CE-2649-405A-870F-95F777D4313A}"
#usecom global IDirect3DDevice9Ex IID_IDirect3DDevice9Ex "{}"
#comfunc global IDirect3DDevice9Ex_SetConvolutionMonoKernel       119 int,int,var,var
#comfunc global IDirect3DDevice9Ex_ComposeRects                   120 sptr,sptr,sptr,int,sptr,int,int,int
#comfunc global IDirect3DDevice9Ex_PresentEx                      121 var,var,sptr,var,int
#comfunc global IDirect3DDevice9Ex_GetGPUThreadPriority           122 var
#comfunc global IDirect3DDevice9Ex_SetGPUThreadPriority           123 int
#comfunc global IDirect3DDevice9Ex_WaitForVBlank                  124 int
#comfunc global IDirect3DDevice9Ex_CheckResourceResidency         125 sptr,int
#comfunc global IDirect3DDevice9Ex_SetMaximumFrameLatency         126 int
#comfunc global IDirect3DDevice9Ex_GetMaximumFrameLatency         127 var
#comfunc global IDirect3DDevice9Ex_CheckDeviceState               128 sptr
#comfunc global IDirect3DDevice9Ex_CreateRenderTargetEx           129 int,int,int,int,int,int,sptr,sptr,int
#comfunc global IDirect3DDevice9Ex_CreateOffscreenPlainSurfaceEx  130 int,int,int,int,sptr,sptr,int
#comfunc global IDirect3DDevice9Ex_CreateDepthStencilSurfaceEx    131 int,int,int,int,int,int,sptr,sptr,int
#comfunc global IDirect3DDevice9Ex_ResetEx                        132 var,var
#comfunc global IDirect3DDevice9Ex_GetDisplayModeEx               133 int,var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。