D3D12EnableExperimentalFeatures 関数 (d3d12.h)
試験的な機能の一覧を有効にします。
構文
HRESULT D3D12EnableExperimentalFeatures(
UINT NumFeatures,
[in] const IID *pIIDs,
[in] void *pConfigurationStructs,
[in] UINT *pConfigurationStructSizes
);
パラメーター
NumFeatures
型: UINT
有効にする試験的な機能の数。
[in] pIIDs
型: const IID*
SAL: __in_ecount(NumFeatures)
使用可能な実験用機能のうち、有効にする機能を指定する ID の配列へのポインター。
[in] pConfigurationStructs
型: void*
SAL: __in_ecount(NumFeatures)
一部の試験的な機能を有効にする必要がある可能性がある追加の構成の詳細を含む構造体。
[in] pConfigurationStructSizes
型: UINT*
SAL: __in_ecount(NumFeatures)
pConfigurationStructs パラメーターで渡される構成構造体のサイズ。
戻り値
型: HRESULT
このメソッドは、認識できない機能が指定されている場合、または開発者モードが有効になっていない場合はE_NOINTERFACEを含めることができる HRESULT 成功またはエラー コードを返します。機能の構成が正しい場合、指定された試験的な機能に互換性がない、またはその他のエラーが発生した場合にE_INVALIDARGします。
解説
デバイスの作成前にこの関数を呼び出します。
実験機能のセットは時間の経過とともに変化し、これらの機能は安定しない可能性があるため、開発と実験のみを目的としています。 これは、試験的な機能を有効にする前に開発者モードをアクティブにするように要求することで適用されます。
現在サポートされている実験用機能のセットは、D3D12EnableExperimentalFeatures 関数の定義の近くにある D3D12.h ヘッダーにあります。試験的な機能はまれにしか使用できないため、現在は試験的な機能がサポートされていないことを確認するのが一般的です。
一部の試験的な機能は、GUID として IID を使用して識別される場合があります。 これらの機能では、D3D12GetDebugInterface を使用し、パラメーターとして IID を渡して、その機能を操作するためのインターフェイスを取得できます。
有効にする機能の別の一覧を使用してこの関数を再度呼び出すと、現在のすべての D3D12 デバイスがDEVICE_REMOVED状態に設定されます。
例
この例では、試験的な機能定義の外観を示します。
// --------------------------------------------------------------------------------------------------------------------------------
// Experimental Feature: D3D12ExperimentalShaderModels
//
// Use with D3D12EnableExperimentalFeatures to enable experimental shader model support,
// meaning shader models that haven't been finalized for use in retail.
//
// Enabling D3D12ExperimentalShaderModels needs no configuration struct, pass NULL in the pConfigurationStructs array.
//
// --------------------------------------------------------------------------------------------------------------------------------
static const UUID D3D12ExperimentalShaderModels = { /* 76f5573e-f13a-40f5-b297-81ce9e18933f */
0x76f5573e,
0xf13a,
0x40f5,
{ 0xb2, 0x97, 0x81, 0xce, 0x9e, 0x18, 0x93, 0x3f }
};
必要条件
対象プラットフォーム | Windows |
ヘッダー | d3d12.h |
Library | D3D12.lib |
[DLL] | D3D12.dll |