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

ID3D12GraphicsCommandList4

COM
IID8754318e-d3a9-4541-98cf-645b50dc4874継承元ID3D12GraphicsCommandList3自前メソッド開始 vtbl68

メソッド 9

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

vtbl 68 void BeginRenderPass(DWORD NumRenderTargets, D3D12_RENDER_PASS_RENDER_TARGET_DESC* pRenderTargets, D3D12_RENDER_PASS_DEPTH_STENCIL_DESC* pDepthStencil, D3D12_RENDER_PASS_FLAGS Flags)
NumRenderTargetsDWORDinレンダーパスで使用するレンダーターゲットの個数。
pRenderTargetsD3D12_RENDER_PASS_RENDER_TARGET_DESC*inoptional各レンダーターゲットの記述(開始・終了アクセス挙動)を含む配列。
pDepthStencilD3D12_RENDER_PASS_DEPTH_STENCIL_DESC*inoptional深度ステンシルの記述子。使用しない場合はNULL可。
FlagsD3D12_RENDER_PASS_FLAGSinレンダーパスの挙動を制御するフラグ(サスペンド/リジューム等)。
vtbl 69 void EndRenderPass()
vtbl 70 void InitializeMetaCommand(ID3D12MetaCommand* pMetaCommand, void* pInitializationParametersData, UINT_PTR InitializationParametersDataSizeInBytes)
pMetaCommandID3D12MetaCommand*in初期化する対象のメタコマンド。
pInitializationParametersDatavoid*inoptional初期化ステージへ渡すパラメータデータの先頭ポインタ。不要時はNULL可。
InitializationParametersDataSizeInBytesUINT_PTRin初期化パラメータデータのバイト単位サイズ。
vtbl 71 void ExecuteMetaCommand(ID3D12MetaCommand* pMetaCommand, void* pExecutionParametersData, UINT_PTR ExecutionParametersDataSizeInBytes)
pMetaCommandID3D12MetaCommand*in実行する対象のメタコマンド。
pExecutionParametersDatavoid*inoptional実行ステージへ渡すパラメータデータの先頭ポインタ。不要時はNULL可。
ExecutionParametersDataSizeInBytesUINT_PTRin実行パラメータデータのバイト単位サイズ。
vtbl 72 void BuildRaytracingAccelerationStructure(D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC* pDesc, DWORD NumPostbuildInfoDescs, D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC* pPostbuildInfoDescs)
pDescD3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC*in構築する高速化構造のビルド記述子。入力・出力・スクラッチアドレスを含む。
NumPostbuildInfoDescsDWORDinビルド後情報を出力する記述子の個数。不要時は0。
pPostbuildInfoDescsD3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC*inoptionalビルド後に取得する情報の記述子配列。NumPostbuildInfoDescsが0ならNULL可。
vtbl 73 void EmitRaytracingAccelerationStructurePostbuildInfo(D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC* pDesc, DWORD NumSourceAccelerationStructures, ULONGLONG* pSourceAccelerationStructureData)
pDescD3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC*in出力するビルド後情報の種別と書き込み先を示す記述子。
NumSourceAccelerationStructuresDWORDin情報を取得する元の高速化構造の個数。
pSourceAccelerationStructureDataULONGLONG*in対象高速化構造のGPU仮想アドレスの配列。
vtbl 74 void CopyRaytracingAccelerationStructure(ULONGLONG DestAccelerationStructureData, ULONGLONG SourceAccelerationStructureData, D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode)
DestAccelerationStructureDataULONGLONGinコピー先高速化構造のGPU仮想アドレス。
SourceAccelerationStructureDataULONGLONGinコピー元高速化構造のGPU仮想アドレス。
ModeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODEinコピーモード。複製・コンパクト化・可視化シリアライズ等を指定する。
vtbl 75 void SetPipelineState1(ID3D12StateObject* pStateObject)
pStateObjectID3D12StateObject*in設定するレイトレーシング等のステートオブジェクト。
vtbl 76 void DispatchRays(D3D12_DISPATCH_RAYS_DESC* pDesc)
pDescD3D12_DISPATCH_RAYS_DESC*inレイ生成のディスパッチ記述子。シェーダーテーブルと幅・高さ・深さを含む。

HSP用 COM定義

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

出力引数:
#define global IID_ID3D12GraphicsCommandList4 "{8754318E-D3A9-4541-98CF-645B50DC4874}"
#usecom global ID3D12GraphicsCommandList4 IID_ID3D12GraphicsCommandList4 "{}"
#comfunc global ID3D12GraphicsCommandList4_BeginRenderPass                                   68 int,var,var,int
#comfunc global ID3D12GraphicsCommandList4_EndRenderPass                                     69
#comfunc global ID3D12GraphicsCommandList4_InitializeMetaCommand                             70 sptr,sptr,sptr
#comfunc global ID3D12GraphicsCommandList4_ExecuteMetaCommand                                71 sptr,sptr,sptr
#comfunc global ID3D12GraphicsCommandList4_BuildRaytracingAccelerationStructure              72 var,int,var
#comfunc global ID3D12GraphicsCommandList4_EmitRaytracingAccelerationStructurePostbuildInfo  73 var,int,var
#comfunc global ID3D12GraphicsCommandList4_CopyRaytracingAccelerationStructure               74 int64,int64,int
#comfunc global ID3D12GraphicsCommandList4_SetPipelineState1                                 75 sptr
#comfunc global ID3D12GraphicsCommandList4_DispatchRays                                      76 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。