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

ID3D12Device10

COM
IID517f8718-aa66-49f9-b02b-a7ab89c06031継承元ID3D12Device9自前メソッド開始 vtbl76

メソッド 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)
pHeapPropertiesD3D12_HEAP_PROPERTIES*inリソース用に確保するヒープのプロパティ。
HeapFlagsD3D12_HEAP_FLAGSinヒープ作成時の属性を制御するフラグ。
pDescD3D12_RESOURCE_DESC1*in作成するリソースの拡張記述子。
InitialLayoutD3D12_BARRIER_LAYOUTin拡張バリア用の初期レイアウト。最初の使用方法に合わせる。
pOptimizedClearValueD3D12_CLEAR_VALUE*inoptionalクリア最適化値。レンダーターゲットや深度以外ではNULL可。
pProtectedSessionID3D12ProtectedResourceSession*inoptionalリソースを関連付ける保護リソースセッション。非保護時はNULL可。
NumCastableFormatsDWORDinキャスト可能フォーマット配列の要素数。不要時は0。
pCastableFormatsDXGI_FORMAT*inoptionalこのリソースへキャスト可能なフォーマットの配列。0ならNULL可。
riidResourceGUID*in取得するインターフェイスのGUID。通常はID3D12ResourceのIIDを指定する。
ppvResourcevoid**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)
pHeapID3D12Heap*inリソースを配置する対象の既存ヒープ。
HeapOffsetULONGLONGinヒープ内のリソース配置オフセットをバイト単位で指定する。
pDescD3D12_RESOURCE_DESC1*in作成するリソースの拡張記述子。
InitialLayoutD3D12_BARRIER_LAYOUTin拡張バリア用の初期レイアウト。
pOptimizedClearValueD3D12_CLEAR_VALUE*inoptionalクリア最適化値。レンダーターゲットや深度以外ではNULL可。
NumCastableFormatsDWORDinキャスト可能フォーマット配列の要素数。不要時は0。
pCastableFormatsDXGI_FORMAT*inoptionalこのリソースへキャスト可能なフォーマットの配列。0ならNULL可。
riidGUID*in取得するインターフェイスのGUID。通常はID3D12ResourceのIIDを指定する。
ppvResourcevoid**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)
pDescD3D12_RESOURCE_DESC*in作成する予約(タイル)リソースの記述子。
InitialLayoutD3D12_BARRIER_LAYOUTin拡張バリア用の初期レイアウト。
pOptimizedClearValueD3D12_CLEAR_VALUE*inoptionalクリア最適化値。レンダーターゲットや深度以外ではNULL可。
pProtectedSessionID3D12ProtectedResourceSession*inoptionalリソースを関連付ける保護リソースセッション。非保護時はNULL可。
NumCastableFormatsDWORDinキャスト可能フォーマット配列の要素数。不要時は0。
pCastableFormatsDXGI_FORMAT*inoptionalこのリソースへキャスト可能なフォーマットの配列。0ならNULL可。
riidGUID*in取得するインターフェイスのGUID。通常はID3D12ResourceのIIDを指定する。
ppvResourcevoid**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 指定が可能。