ホーム › Graphics.Direct3D12 › ID3D12GraphicsCommandList1
ID3D12GraphicsCommandList1
COMメソッド 6
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 60 void AtomicCopyBufferUINT(ID3D12Resource* pDstBuffer, ULONGLONG DstOffset, ID3D12Resource* pSrcBuffer, ULONGLONG SrcOffset, DWORD Dependencies, ID3D12Resource** ppDependentResources, D3D12_SUBRESOURCE_RANGE_UINT64* pDependentSubresourceRanges)
| pDstBuffer | ID3D12Resource* | in | コピー先のバッファリソースを指す。 |
| DstOffset | ULONGLONG | in | コピー先バッファ内の書き込み開始バイトオフセットを指定する。 |
| pSrcBuffer | ID3D12Resource* | in | コピー元のバッファリソースを指す。 |
| SrcOffset | ULONGLONG | in | コピー元バッファ内の読み取り開始バイトオフセットを指定する。 |
| Dependencies | DWORD | in | 依存リソースの数を指定する。 |
| ppDependentResources | ID3D12Resource** | in | アトミックコピーが依存するリソースの配列を指す。 |
| pDependentSubresourceRanges | D3D12_SUBRESOURCE_RANGE_UINT64* | in | 各依存リソースの対象サブリソース範囲を示す配列を指す。 |
vtbl 61 void AtomicCopyBufferUINT64(ID3D12Resource* pDstBuffer, ULONGLONG DstOffset, ID3D12Resource* pSrcBuffer, ULONGLONG SrcOffset, DWORD Dependencies, ID3D12Resource** ppDependentResources, D3D12_SUBRESOURCE_RANGE_UINT64* pDependentSubresourceRanges)
| pDstBuffer | ID3D12Resource* | in | コピー先のバッファリソースを指す。 |
| DstOffset | ULONGLONG | in | コピー先バッファ内の書き込み開始バイトオフセットを指定する。 |
| pSrcBuffer | ID3D12Resource* | in | コピー元のバッファリソースを指す。 |
| SrcOffset | ULONGLONG | in | コピー元バッファ内の読み取り開始バイトオフセットを指定する。 |
| Dependencies | DWORD | in | 依存リソースの数を指定する。 |
| ppDependentResources | ID3D12Resource** | in | アトミックコピーが依存するリソースの配列を指す。 |
| pDependentSubresourceRanges | D3D12_SUBRESOURCE_RANGE_UINT64* | in | 各依存リソースの対象サブリソース範囲を示す配列を指す。 |
| Min | FLOAT | in | 深度境界テストの下限値を指定する。 |
| Max | FLOAT | in | 深度境界テストの上限値を指定する。 |
vtbl 63 void SetSamplePositions(DWORD NumSamplesPerPixel, DWORD NumPixels, D3D12_SAMPLE_POSITION* pSamplePositions)
| NumSamplesPerPixel | DWORD | in | 1ピクセルあたりのサンプル数を指定する。 |
| NumPixels | DWORD | in | サンプル位置を設定するピクセル数を指定する。 |
| pSamplePositions | D3D12_SAMPLE_POSITION* | in | プログラマブルサンプル位置を示すD3D12_SAMPLE_POSITION配列を指す。 |
vtbl 64 void ResolveSubresourceRegion(ID3D12Resource* pDstResource, DWORD DstSubresource, DWORD DstX, DWORD DstY, ID3D12Resource* pSrcResource, DWORD SrcSubresource, RECT* pSrcRect, DXGI_FORMAT Format, D3D12_RESOLVE_MODE ResolveMode)
| pDstResource | ID3D12Resource* | in | 解決結果を書き込む単一サンプルの宛先リソースを指す。 |
| DstSubresource | DWORD | in | 宛先サブリソースのインデックスを指定する。 |
| DstX | DWORD | in | 宛先領域の左上X座標を指定する。 |
| DstY | DWORD | in | 宛先領域の左上Y座標を指定する。 |
| pSrcResource | ID3D12Resource* | in | 解決元のマルチサンプルリソースを指す。 |
| SrcSubresource | DWORD | in | 解決元サブリソースのインデックスを指定する。 |
| pSrcRect | RECT* | inoptional | 解決元から処理する矩形領域(RECT)を指す。全体ならNULL可。 |
| Format | DXGI_FORMAT | in | 解決処理に用いるDXGI_FORMATを指定する。 |
| ResolveMode | D3D12_RESOLVE_MODE | in | サンプル統合の方法を示すD3D12_RESOLVE_MODE値を指定する。 |
vtbl 65 void SetViewInstanceMask(DWORD Mask)
| Mask | DWORD | in | 有効化するビューインスタンスを示すビットマスクを指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_ID3D12GraphicsCommandList1 "{553103FB-1FE7-4557-BB38-946D7D0E7CA7}" #usecom global ID3D12GraphicsCommandList1 IID_ID3D12GraphicsCommandList1 "{}" #comfunc global ID3D12GraphicsCommandList1_AtomicCopyBufferUINT 60 sptr,int64,sptr,int64,int,sptr,var #comfunc global ID3D12GraphicsCommandList1_AtomicCopyBufferUINT64 61 sptr,int64,sptr,int64,int,sptr,var #comfunc global ID3D12GraphicsCommandList1_OMSetDepthBounds 62 float,float #comfunc global ID3D12GraphicsCommandList1_SetSamplePositions 63 int,int,var #comfunc global ID3D12GraphicsCommandList1_ResolveSubresourceRegion 64 sptr,int,int,int,sptr,int,var,int,int #comfunc global ID3D12GraphicsCommandList1_SetViewInstanceMask 65 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ID3D12GraphicsCommandList1 "{553103FB-1FE7-4557-BB38-946D7D0E7CA7}" #usecom global ID3D12GraphicsCommandList1 IID_ID3D12GraphicsCommandList1 "{}" #comfunc global ID3D12GraphicsCommandList1_AtomicCopyBufferUINT 60 sptr,int64,sptr,int64,int,sptr,sptr #comfunc global ID3D12GraphicsCommandList1_AtomicCopyBufferUINT64 61 sptr,int64,sptr,int64,int,sptr,sptr #comfunc global ID3D12GraphicsCommandList1_OMSetDepthBounds 62 float,float #comfunc global ID3D12GraphicsCommandList1_SetSamplePositions 63 int,int,sptr #comfunc global ID3D12GraphicsCommandList1_ResolveSubresourceRegion 64 sptr,int,int,int,sptr,int,sptr,int,int #comfunc global ID3D12GraphicsCommandList1_SetViewInstanceMask 65 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。