ホーム › Graphics.Direct3D12 › ID3D12Device10
ID3D12Device10
COMメソッド 3
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 76 HRESULT CreateCommittedResource3(D3D12_HEAP_PROPERTIES* pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, D3D12_RESOURCE_DESC1* pDesc, D3D12_BARRIER_LAYOUT InitialLayout, D3D12_CLEAR_VALUE* pOptimizedClearValue, ID3D12ProtectedResourceSession* pProtectedSession, DWORD NumCastableFormats, DXGI_FORMAT* pCastableFormats, GUID* riidResource, void** ppvResource)
| pHeapProperties | D3D12_HEAP_PROPERTIES* | in | リソース用に確保するヒープのプロパティ。 |
| HeapFlags | D3D12_HEAP_FLAGS | in | ヒープ作成時の属性を制御するフラグ。 |
| pDesc | D3D12_RESOURCE_DESC1* | in | 作成するリソースの拡張記述子。 |
| InitialLayout | D3D12_BARRIER_LAYOUT | in | 拡張バリア用の初期レイアウト。最初の使用方法に合わせる。 |
| pOptimizedClearValue | D3D12_CLEAR_VALUE* | inoptional | クリア最適化値。レンダーターゲットや深度以外ではNULL可。 |
| pProtectedSession | ID3D12ProtectedResourceSession* | inoptional | リソースを関連付ける保護リソースセッション。非保護時はNULL可。 |
| NumCastableFormats | DWORD | in | キャスト可能フォーマット配列の要素数。不要時は0。 |
| pCastableFormats | DXGI_FORMAT* | inoptional | このリソースへキャスト可能なフォーマットの配列。0ならNULL可。 |
| riidResource | GUID* | in | 取得するインターフェイスのGUID。通常はID3D12ResourceのIIDを指定する。 |
| ppvResource | void** | outoptional | 生成されたリソースを受け取る出力ポインタ。 |
vtbl 77 HRESULT CreatePlacedResource2(ID3D12Heap* pHeap, ULONGLONG HeapOffset, D3D12_RESOURCE_DESC1* pDesc, D3D12_BARRIER_LAYOUT InitialLayout, D3D12_CLEAR_VALUE* pOptimizedClearValue, DWORD NumCastableFormats, DXGI_FORMAT* pCastableFormats, GUID* riid, void** ppvResource)
| pHeap | ID3D12Heap* | in | リソースを配置する対象の既存ヒープ。 |
| HeapOffset | ULONGLONG | in | ヒープ内のリソース配置オフセットをバイト単位で指定する。 |
| pDesc | D3D12_RESOURCE_DESC1* | in | 作成するリソースの拡張記述子。 |
| InitialLayout | D3D12_BARRIER_LAYOUT | in | 拡張バリア用の初期レイアウト。 |
| pOptimizedClearValue | D3D12_CLEAR_VALUE* | inoptional | クリア最適化値。レンダーターゲットや深度以外ではNULL可。 |
| NumCastableFormats | DWORD | in | キャスト可能フォーマット配列の要素数。不要時は0。 |
| pCastableFormats | DXGI_FORMAT* | inoptional | このリソースへキャスト可能なフォーマットの配列。0ならNULL可。 |
| riid | GUID* | in | 取得するインターフェイスのGUID。通常はID3D12ResourceのIIDを指定する。 |
| ppvResource | void** | outoptional | 生成されたリソースを受け取る出力ポインタ。 |
vtbl 78 HRESULT CreateReservedResource2(D3D12_RESOURCE_DESC* pDesc, D3D12_BARRIER_LAYOUT InitialLayout, D3D12_CLEAR_VALUE* pOptimizedClearValue, ID3D12ProtectedResourceSession* pProtectedSession, DWORD NumCastableFormats, DXGI_FORMAT* pCastableFormats, GUID* riid, void** ppvResource)
| pDesc | D3D12_RESOURCE_DESC* | in | 作成する予約(タイル)リソースの記述子。 |
| InitialLayout | D3D12_BARRIER_LAYOUT | in | 拡張バリア用の初期レイアウト。 |
| pOptimizedClearValue | D3D12_CLEAR_VALUE* | inoptional | クリア最適化値。レンダーターゲットや深度以外ではNULL可。 |
| pProtectedSession | ID3D12ProtectedResourceSession* | inoptional | リソースを関連付ける保護リソースセッション。非保護時はNULL可。 |
| NumCastableFormats | DWORD | in | キャスト可能フォーマット配列の要素数。不要時は0。 |
| pCastableFormats | DXGI_FORMAT* | inoptional | このリソースへキャスト可能なフォーマットの配列。0ならNULL可。 |
| riid | GUID* | in | 取得するインターフェイスのGUID。通常はID3D12ResourceのIIDを指定する。 |
| ppvResource | void** | outoptional | 生成された予約リソースを受け取る出力ポインタ。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_ID3D12Device10 "{517F8718-AA66-49F9-B02B-A7AB89C06031}" #usecom global ID3D12Device10 IID_ID3D12Device10 "{}" #comfunc global ID3D12Device10_CreateCommittedResource3 76 var,int,var,int,var,sptr,int,var,var,sptr #comfunc global ID3D12Device10_CreatePlacedResource2 77 sptr,int64,var,int,var,int,var,var,sptr #comfunc global ID3D12Device10_CreateReservedResource2 78 var,int,var,sptr,int,var,var,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ID3D12Device10 "{517F8718-AA66-49F9-B02B-A7AB89C06031}" #usecom global ID3D12Device10 IID_ID3D12Device10 "{}" #comfunc global ID3D12Device10_CreateCommittedResource3 76 sptr,int,sptr,int,sptr,sptr,int,sptr,sptr,sptr #comfunc global ID3D12Device10_CreatePlacedResource2 77 sptr,int64,sptr,int,sptr,int,sptr,sptr,sptr #comfunc global ID3D12Device10_CreateReservedResource2 78 sptr,int,sptr,sptr,int,sptr,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。