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

ID3D12Device

COM
IID189819f1-1db6-4b57-be54-1821339b85f7継承元ID3D12Object自前メソッド開始 vtbl7

メソッド 37

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

vtbl 7 DWORD GetNodeCount()
vtbl 8 HRESULT CreateCommandQueue(D3D12_COMMAND_QUEUE_DESC* pDesc, GUID* riid, void** ppCommandQueue)
pDescD3D12_COMMAND_QUEUE_DESC*in作成するコマンドキューの種類や優先度を定義する記述子を指す。
riidGUID*in取得するコマンドキューインターフェイスのGUIDを指す。
ppCommandQueuevoid**out作成されたコマンドキューを受け取る出力ポインタ。
vtbl 9 HRESULT CreateCommandAllocator(D3D12_COMMAND_LIST_TYPE type, GUID* riid, void** ppCommandAllocator)
typeD3D12_COMMAND_LIST_TYPEin作成するアロケータの対象コマンドリスト種別を示すD3D12_COMMAND_LIST_TYPE値を指定する。
riidGUID*in取得するコマンドアロケータインターフェイスのGUIDを指す。
ppCommandAllocatorvoid**out作成されたコマンドアロケータを受け取る出力ポインタ。
vtbl 10 HRESULT CreateGraphicsPipelineState(D3D12_GRAPHICS_PIPELINE_STATE_DESC* pDesc, GUID* riid, void** ppPipelineState)
pDescD3D12_GRAPHICS_PIPELINE_STATE_DESC*inグラフィックスパイプラインの全状態を定義する記述子を指す。
riidGUID*in取得するパイプラインステートインターフェイスのGUIDを指す。
ppPipelineStatevoid**out作成されたグラフィックスパイプラインステートを受け取る出力ポインタ。
vtbl 11 HRESULT CreateComputePipelineState(D3D12_COMPUTE_PIPELINE_STATE_DESC* pDesc, GUID* riid, void** ppPipelineState)
pDescD3D12_COMPUTE_PIPELINE_STATE_DESC*inコンピュートパイプラインの状態を定義する記述子を指す。
riidGUID*in取得するパイプラインステートインターフェイスのGUIDを指す。
ppPipelineStatevoid**out作成されたコンピュートパイプラインステートを受け取る出力ポインタ。
vtbl 12 HRESULT CreateCommandList(DWORD nodeMask, D3D12_COMMAND_LIST_TYPE type, ID3D12CommandAllocator* pCommandAllocator, ID3D12PipelineState* pInitialState, GUID* riid, void** ppCommandList)
nodeMaskDWORDinコマンドリストが対象とするGPUノードを示すビットマスク。単一GPUでは0。
typeD3D12_COMMAND_LIST_TYPEin作成するコマンドリストの種別を示すD3D12_COMMAND_LIST_TYPE値を指定する。
pCommandAllocatorID3D12CommandAllocator*inコマンド記録に使用するコマンドアロケータを指す。
pInitialStateID3D12PipelineState*inoptionalコマンドリストの初期パイプラインステートを指す。NULL可。
riidGUID*in取得するコマンドリストインターフェイスのGUIDを指す。
ppCommandListvoid**out作成されたコマンドリストを受け取る出力ポインタ。
vtbl 13 HRESULT CheckFeatureSupport(D3D12_FEATURE Feature, void* pFeatureSupportData, DWORD FeatureSupportDataSize)
FeatureD3D12_FEATUREinサポート状況を問い合わせる機能を示すD3D12_FEATURE値を指定する。
pFeatureSupportDatavoid*inout機能ごとの問い合わせ結果を格納する構造体を指す。
FeatureSupportDataSizeDWORDinpFeatureSupportDataが指す構造体のサイズをバイト単位で指定する。
vtbl 14 HRESULT CreateDescriptorHeap(D3D12_DESCRIPTOR_HEAP_DESC* pDescriptorHeapDesc, GUID* riid, void** ppvHeap)
pDescriptorHeapDescD3D12_DESCRIPTOR_HEAP_DESC*in作成するディスクリプタヒープの種別・数・可視性を定義する記述子を指す。
riidGUID*in取得するディスクリプタヒープインターフェイスのGUIDを指す。
ppvHeapvoid**out作成されたディスクリプタヒープを受け取る出力ポインタ。
vtbl 15 DWORD GetDescriptorHandleIncrementSize(D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType)
DescriptorHeapTypeD3D12_DESCRIPTOR_HEAP_TYPEin増分サイズを取得する対象のディスクリプタヒープ種別を示すD3D12_DESCRIPTOR_HEAP_TYPE値を指定する。
vtbl 16 HRESULT CreateRootSignature(DWORD nodeMask, void* pBlobWithRootSignature, UINT_PTR blobLengthInBytes, GUID* riid, void** ppvRootSignature)
nodeMaskDWORDinルートシグネチャが対象とするGPUノードを示すビットマスク。単一GPUでは0。
pBlobWithRootSignaturevoid*inシリアライズ済みルートシグネチャを含むBlobデータを指す。
blobLengthInBytesUINT_PTRinBlobデータのサイズをバイト単位で指定する。
riidGUID*in取得するルートシグネチャインターフェイスのGUIDを指す。
ppvRootSignaturevoid**out作成されたルートシグネチャを受け取る出力ポインタ。
vtbl 17 void CreateConstantBufferView(D3D12_CONSTANT_BUFFER_VIEW_DESC* pDesc, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor)
pDescD3D12_CONSTANT_BUFFER_VIEW_DESC*inoptional作成する定数バッファビューの記述子を指す。NULLならNULLビューを作る。
DestDescriptorD3D12_CPU_DESCRIPTOR_HANDLEinビューを書き込む宛先のCPUディスクリプタハンドルを指定する。
vtbl 18 void CreateShaderResourceView(ID3D12Resource* pResource, D3D12_SHADER_RESOURCE_VIEW_DESC* pDesc, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor)
pResourceID3D12Resource*inoptionalビューを作成する対象リソースを指す。NULL可(NULLビュー)。
pDescD3D12_SHADER_RESOURCE_VIEW_DESC*inoptionalSRVの記述子を指す。NULLならリソースの既定構成で作成する。
DestDescriptorD3D12_CPU_DESCRIPTOR_HANDLEinビューを書き込む宛先のCPUディスクリプタハンドルを指定する。
vtbl 19 void CreateUnorderedAccessView(ID3D12Resource* pResource, ID3D12Resource* pCounterResource, D3D12_UNORDERED_ACCESS_VIEW_DESC* pDesc, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor)
pResourceID3D12Resource*inoptionalUAVを作成する対象リソースを指す。NULL可(NULLビュー)。
pCounterResourceID3D12Resource*inoptional付随するカウンタを保持するリソースを指す。不要ならNULL可。
pDescD3D12_UNORDERED_ACCESS_VIEW_DESC*inoptionalUAVの記述子を指す。NULLならリソースの既定構成で作成する。
DestDescriptorD3D12_CPU_DESCRIPTOR_HANDLEinビューを書き込む宛先のCPUディスクリプタハンドルを指定する。
vtbl 20 void CreateRenderTargetView(ID3D12Resource* pResource, D3D12_RENDER_TARGET_VIEW_DESC* pDesc, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor)
pResourceID3D12Resource*inoptionalRTVを作成する対象リソースを指す。NULL可(NULLビュー)。
pDescD3D12_RENDER_TARGET_VIEW_DESC*inoptionalRTVの記述子を指す。NULLならリソースの既定構成で作成する。
DestDescriptorD3D12_CPU_DESCRIPTOR_HANDLEinビューを書き込む宛先のCPUディスクリプタハンドルを指定する。
vtbl 21 void CreateDepthStencilView(ID3D12Resource* pResource, D3D12_DEPTH_STENCIL_VIEW_DESC* pDesc, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor)
pResourceID3D12Resource*inoptionalDSVを作成する対象リソースを指す。NULL可(NULLビュー)。
pDescD3D12_DEPTH_STENCIL_VIEW_DESC*inoptionalDSVの記述子を指す。NULLならリソースの既定構成で作成する。
DestDescriptorD3D12_CPU_DESCRIPTOR_HANDLEinビューを書き込む宛先のCPUディスクリプタハンドルを指定する。
vtbl 22 void CreateSampler(D3D12_SAMPLER_DESC* pDesc, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor)
pDescD3D12_SAMPLER_DESC*in作成するサンプラの記述子(フィルタ・アドレッシング等)を指す。
DestDescriptorD3D12_CPU_DESCRIPTOR_HANDLEinサンプラを書き込む宛先のCPUディスクリプタハンドルを指定する。
vtbl 23 void CopyDescriptors(DWORD NumDestDescriptorRanges, D3D12_CPU_DESCRIPTOR_HANDLE* pDestDescriptorRangeStarts, DWORD* pDestDescriptorRangeSizes, DWORD NumSrcDescriptorRanges, D3D12_CPU_DESCRIPTOR_HANDLE* pSrcDescriptorRangeStarts, DWORD* pSrcDescriptorRangeSizes, D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType)
NumDestDescriptorRangesDWORDin宛先ディスクリプタ範囲の数を指定する。
pDestDescriptorRangeStartsD3D12_CPU_DESCRIPTOR_HANDLE*in各宛先範囲の開始CPUディスクリプタハンドル配列を指す。
pDestDescriptorRangeSizesDWORD*inoptional各宛先範囲のディスクリプタ数配列を指す。NULLなら各1個とみなす。
NumSrcDescriptorRangesDWORDinコピー元ディスクリプタ範囲の数を指定する。
pSrcDescriptorRangeStartsD3D12_CPU_DESCRIPTOR_HANDLE*in各コピー元範囲の開始CPUディスクリプタハンドル配列を指す。
pSrcDescriptorRangeSizesDWORD*inoptional各コピー元範囲のディスクリプタ数配列を指す。NULLなら各1個とみなす。
DescriptorHeapsTypeD3D12_DESCRIPTOR_HEAP_TYPEinコピー対象のディスクリプタヒープ種別を示すD3D12_DESCRIPTOR_HEAP_TYPE値を指定する。
vtbl 24 void CopyDescriptorsSimple(DWORD NumDescriptors, D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType)
NumDescriptorsDWORDinコピーするディスクリプタの数を指定する。
DestDescriptorRangeStartD3D12_CPU_DESCRIPTOR_HANDLEin宛先範囲の開始CPUディスクリプタハンドルを指定する。
SrcDescriptorRangeStartD3D12_CPU_DESCRIPTOR_HANDLEinコピー元範囲の開始CPUディスクリプタハンドルを指定する。
DescriptorHeapsTypeD3D12_DESCRIPTOR_HEAP_TYPEinコピー対象のディスクリプタヒープ種別を示すD3D12_DESCRIPTOR_HEAP_TYPE値を指定する。
vtbl 25 D3D12_RESOURCE_ALLOCATION_INFO GetResourceAllocationInfo(DWORD visibleMask, DWORD numResourceDescs, D3D12_RESOURCE_DESC* pResourceDescs)
visibleMaskDWORDinリソースが可視となるGPUノードを示すビットマスク。単一GPUでは0。
numResourceDescsDWORDinpResourceDescs配列の要素数を指定する。
pResourceDescsD3D12_RESOURCE_DESC*inアロケーション情報を算出する対象リソースの記述子配列を指す。
vtbl 26 D3D12_HEAP_PROPERTIES GetCustomHeapProperties(DWORD nodeMask, D3D12_HEAP_TYPE heapType)
nodeMaskDWORDin対象とするGPUノードを示すビットマスク。単一GPUでは0。
heapTypeD3D12_HEAP_TYPEinプロパティを取得する対象のヒープ種別を示すD3D12_HEAP_TYPE値を指定する。
vtbl 27 HRESULT CreateCommittedResource(D3D12_HEAP_PROPERTIES* pHeapProperties, D3D12_HEAP_FLAGS HeapFlags, D3D12_RESOURCE_DESC* pDesc, D3D12_RESOURCE_STATES InitialResourceState, D3D12_CLEAR_VALUE* pOptimizedClearValue, GUID* riidResource, void** ppvResource)
pHeapPropertiesD3D12_HEAP_PROPERTIES*inリソース専用に確保するヒープのプロパティを指す。
HeapFlagsD3D12_HEAP_FLAGSinヒープの動作を指定するD3D12_HEAP_FLAGSのビット組み合わせ。
pDescD3D12_RESOURCE_DESC*in作成するリソースの記述子を指す。
InitialResourceStateD3D12_RESOURCE_STATESin作成直後のリソース状態を示すD3D12_RESOURCE_STATESを指定する。
pOptimizedClearValueD3D12_CLEAR_VALUE*inoptionalクリア最適化に用いる値を指す。テクスチャ以外などではNULL可。
riidResourceGUID*in取得するリソースインターフェイスのGUIDを指す。
ppvResourcevoid**outoptional作成されたリソースを受け取る出力ポインタ。
vtbl 28 HRESULT CreateHeap(D3D12_HEAP_DESC* pDesc, GUID* riid, void** ppvHeap)
pDescD3D12_HEAP_DESC*in作成するヒープのサイズや種別を定義する記述子を指す。
riidGUID*in取得するヒープインターフェイスのGUIDを指す。
ppvHeapvoid**outoptional作成されたヒープを受け取る出力ポインタ。
vtbl 29 HRESULT CreatePlacedResource(ID3D12Heap* pHeap, ULONGLONG HeapOffset, D3D12_RESOURCE_DESC* pDesc, D3D12_RESOURCE_STATES InitialState, D3D12_CLEAR_VALUE* pOptimizedClearValue, GUID* riid, void** ppvResource)
pHeapID3D12Heap*inリソースを配置する既存のヒープを指す。
HeapOffsetULONGLONGinヒープ内の配置先バイトオフセット(整列必須)を指定する。
pDescD3D12_RESOURCE_DESC*in作成するリソースの記述子を指す。
InitialStateD3D12_RESOURCE_STATESin作成直後のリソース状態を示すD3D12_RESOURCE_STATESを指定する。
pOptimizedClearValueD3D12_CLEAR_VALUE*inoptionalクリア最適化に用いる値を指す。不要ならNULL可。
riidGUID*in取得するリソースインターフェイスのGUIDを指す。
ppvResourcevoid**outoptional作成された配置リソースを受け取る出力ポインタ。
vtbl 30 HRESULT CreateReservedResource(D3D12_RESOURCE_DESC* pDesc, D3D12_RESOURCE_STATES InitialState, D3D12_CLEAR_VALUE* pOptimizedClearValue, GUID* riid, void** ppvResource)
pDescD3D12_RESOURCE_DESC*in作成する予約(タイル化)リソースの記述子を指す。
InitialStateD3D12_RESOURCE_STATESin作成直後のリソース状態を示すD3D12_RESOURCE_STATESを指定する。
pOptimizedClearValueD3D12_CLEAR_VALUE*inoptionalクリア最適化に用いる値を指す。不要ならNULL可。
riidGUID*in取得するリソースインターフェイスのGUIDを指す。
ppvResourcevoid**outoptional作成された予約リソースを受け取る出力ポインタ。
vtbl 31 HRESULT CreateSharedHandle(ID3D12DeviceChild* pObject, SECURITY_ATTRIBUTES* pAttributes, DWORD Access, LPWSTR Name, HANDLE* pHandle)
pObjectID3D12DeviceChild*in共有ハンドルを作成する対象のデバイス子オブジェクトを指す。
pAttributesSECURITY_ATTRIBUTES*inoptionalハンドルのセキュリティ属性を指す。既定でよければNULL可。
AccessDWORDin共有ハンドルに付与するアクセス権を指定する。
NameLPWSTRinoptional共有ハンドルに付与する名前(ワイド文字列)を指定する。無名ならNULL可。
pHandleHANDLE*out作成された共有NTハンドルを受け取る出力ポインタ。
vtbl 32 HRESULT OpenSharedHandle(HANDLE NTHandle, GUID* riid, void** ppvObj)
NTHandleHANDLEin開く対象の共有NTハンドルを指定する。
riidGUID*in取得するオブジェクトインターフェイスのGUIDを指す。
ppvObjvoid**outoptional開いた共有オブジェクトを受け取る出力ポインタ。
vtbl 33 HRESULT OpenSharedHandleByName(LPWSTR Name, DWORD Access, HANDLE* pNTHandle)
NameLPWSTRin開く対象の名前付き共有ハンドルの名前(ワイド文字列)を指定する。
AccessDWORDinハンドルを開く際のアクセス権を指定する。
pNTHandleHANDLE*out名前から取得したNTハンドルを受け取る出力ポインタ。
vtbl 34 HRESULT MakeResident(DWORD NumObjects, ID3D12Pageable** ppObjects)
NumObjectsDWORDin常駐化するオブジェクトの数を指定する。
ppObjectsID3D12Pageable**inGPUメモリに常駐させるID3D12Pageableオブジェクトの配列を指す。
vtbl 35 HRESULT Evict(DWORD NumObjects, ID3D12Pageable** ppObjects)
NumObjectsDWORDin退避するオブジェクトの数を指定する。
ppObjectsID3D12Pageable**inGPUメモリから退避させるID3D12Pageableオブジェクトの配列を指す。
vtbl 36 HRESULT CreateFence(ULONGLONG InitialValue, D3D12_FENCE_FLAGS Flags, GUID* riid, void** ppFence)
InitialValueULONGLONGinフェンスの初期値となる64ビット値を指定する。
FlagsD3D12_FENCE_FLAGSin共有可否などフェンスの動作を指定するD3D12_FENCE_FLAGSのビット組み合わせ。
riidGUID*in取得するフェンスインターフェイスのGUIDを指す。
ppFencevoid**out作成されたフェンスを受け取る出力ポインタ。
vtbl 37 HRESULT GetDeviceRemovedReason()
vtbl 38 void GetCopyableFootprints(D3D12_RESOURCE_DESC* pResourceDesc, DWORD FirstSubresource, DWORD NumSubresources, ULONGLONG BaseOffset, D3D12_PLACED_SUBRESOURCE_FOOTPRINT* pLayouts, DWORD* pNumRows, ULONGLONG* pRowSizeInBytes, ULONGLONG* pTotalBytes)
pResourceDescD3D12_RESOURCE_DESC*inフットプリントを算出する対象リソースの記述子を指す。
FirstSubresourceDWORDin算出を開始するサブリソースのインデックスを指定する。
NumSubresourcesDWORDin算出対象とするサブリソースの数を指定する。
BaseOffsetULONGLONGin計算の基点とするバッファ内バイトオフセットを指定する。
pLayoutsD3D12_PLACED_SUBRESOURCE_FOOTPRINT*outoptional各サブリソースの配置フットプリントを受け取る出力配列を指す。NULL可。
pNumRowsDWORD*outoptional各サブリソースの行数を受け取る出力配列を指す。NULL可。
pRowSizeInBytesULONGLONG*outoptional各サブリソースの1行あたりバイト数を受け取る出力配列を指す。NULL可。
pTotalBytesULONGLONG*outoptional全サブリソースの合計必要バイト数を受け取る出力ポインタ。NULL可。
vtbl 39 HRESULT CreateQueryHeap(D3D12_QUERY_HEAP_DESC* pDesc, GUID* riid, void** ppvHeap)
pDescD3D12_QUERY_HEAP_DESC*in作成するクエリヒープの種別と数を定義する記述子を指す。
riidGUID*in取得するクエリヒープインターフェイスのGUIDを指す。
ppvHeapvoid**outoptional作成されたクエリヒープを受け取る出力ポインタ。
vtbl 40 HRESULT SetStablePowerState(BOOL Enable)
EnableBOOLinGPUの安定電力状態(クロック固定)を有効化するならTRUEを指定する。
vtbl 41 HRESULT CreateCommandSignature(D3D12_COMMAND_SIGNATURE_DESC* pDesc, ID3D12RootSignature* pRootSignature, GUID* riid, void** ppvCommandSignature)
pDescD3D12_COMMAND_SIGNATURE_DESC*in間接実行コマンドの引数レイアウトを定義する記述子を指す。
pRootSignatureID3D12RootSignature*inoptionalルート引数を変更するコマンドを含む場合に対応するルートシグネチャを指す。不要ならNULL可。
riidGUID*in取得するコマンドシグネチャインターフェイスのGUIDを指す。
ppvCommandSignaturevoid**outoptional作成されたコマンドシグネチャを受け取る出力ポインタ。
vtbl 42 void GetResourceTiling(ID3D12Resource* pTiledResource, DWORD* pNumTilesForEntireResource, D3D12_PACKED_MIP_INFO* pPackedMipDesc, D3D12_TILE_SHAPE* pStandardTileShapeForNonPackedMips, DWORD* pNumSubresourceTilings, DWORD FirstSubresourceTilingToGet, D3D12_SUBRESOURCE_TILING* pSubresourceTilingsForNonPackedMips)
pTiledResourceID3D12Resource*inタイル情報を取得する対象のタイル化リソースを指す。
pNumTilesForEntireResourceDWORD*outoptionalリソース全体のタイル総数を受け取る出力ポインタ。NULL可。
pPackedMipDescD3D12_PACKED_MIP_INFO*outoptionalパックドミップの情報を受け取るD3D12_PACKED_MIP_INFO出力ポインタ。NULL可。
pStandardTileShapeForNonPackedMipsD3D12_TILE_SHAPE*outoptional非パックミップの標準タイル形状を受け取る出力ポインタ。NULL可。
pNumSubresourceTilingsDWORD*inoutoptional入力時は取得数、出力時は実数を示すサブリソースタイリング数の入出力ポインタ。
FirstSubresourceTilingToGetDWORDin取得を開始するサブリソースのインデックスを指定する。
pSubresourceTilingsForNonPackedMipsD3D12_SUBRESOURCE_TILING*out各サブリソースのタイリング情報を受け取る出力配列を指す。
vtbl 43 LUID GetAdapterLuid()

HSP用 COM定義

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

出力引数:
#define global IID_ID3D12Device "{189819F1-1DB6-4B57-BE54-1821339B85F7}"
#usecom global ID3D12Device IID_ID3D12Device "{}"
#comfunc global ID3D12Device_GetNodeCount                      7
#comfunc global ID3D12Device_CreateCommandQueue                8 var,var,sptr
#comfunc global ID3D12Device_CreateCommandAllocator            9 int,var,sptr
#comfunc global ID3D12Device_CreateGraphicsPipelineState       10 var,var,sptr
#comfunc global ID3D12Device_CreateComputePipelineState        11 var,var,sptr
#comfunc global ID3D12Device_CreateCommandList                 12 int,int,sptr,sptr,var,sptr
#comfunc global ID3D12Device_CheckFeatureSupport               13 int,sptr,int
#comfunc global ID3D12Device_CreateDescriptorHeap              14 var,var,sptr
#comfunc global ID3D12Device_GetDescriptorHandleIncrementSize  15 int
#comfunc global ID3D12Device_CreateRootSignature               16 int,sptr,sptr,var,sptr
#comfunc global ID3D12Device_CreateConstantBufferView          17 var,int
#comfunc global ID3D12Device_CreateShaderResourceView          18 sptr,var,int
#comfunc global ID3D12Device_CreateUnorderedAccessView         19 sptr,sptr,var,int
#comfunc global ID3D12Device_CreateRenderTargetView            20 sptr,var,int
#comfunc global ID3D12Device_CreateDepthStencilView            21 sptr,var,int
#comfunc global ID3D12Device_CreateSampler                     22 var,int
#comfunc global ID3D12Device_CopyDescriptors                   23 int,var,var,int,var,var,int
#comfunc global ID3D12Device_CopyDescriptorsSimple             24 int,int,int,int
#comfunc global ID3D12Device_GetResourceAllocationInfo         25 int,int,var
#comfunc global ID3D12Device_GetCustomHeapProperties           26 int,int
#comfunc global ID3D12Device_CreateCommittedResource           27 var,int,var,int,var,var,sptr
#comfunc global ID3D12Device_CreateHeap                        28 var,var,sptr
#comfunc global ID3D12Device_CreatePlacedResource              29 sptr,int64,var,int,var,var,sptr
#comfunc global ID3D12Device_CreateReservedResource            30 var,int,var,var,sptr
#comfunc global ID3D12Device_CreateSharedHandle                31 sptr,var,int,wstr,sptr
#comfunc global ID3D12Device_OpenSharedHandle                  32 sptr,var,sptr
#comfunc global ID3D12Device_OpenSharedHandleByName            33 wstr,int,sptr
#comfunc global ID3D12Device_MakeResident                      34 int,sptr
#comfunc global ID3D12Device_Evict                             35 int,sptr
#comfunc global ID3D12Device_CreateFence                       36 int64,int,var,sptr
#comfunc global ID3D12Device_GetDeviceRemovedReason            37
#comfunc global ID3D12Device_GetCopyableFootprints             38 var,int,int,int64,var,var,var,var
#comfunc global ID3D12Device_CreateQueryHeap                   39 var,var,sptr
#comfunc global ID3D12Device_SetStablePowerState               40 int
#comfunc global ID3D12Device_CreateCommandSignature            41 var,sptr,var,sptr
#comfunc global ID3D12Device_GetResourceTiling                 42 sptr,var,var,var,var,int,var
#comfunc global ID3D12Device_GetAdapterLuid                    43
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。