D3D12_FEATURE_DATA_D3D12_OPTIONS 構造体 (d3d12.h)

現在のグラフィックス ドライバー Direct3D 12機能オプションについて説明します。

構文

typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS {
  BOOL                                  DoublePrecisionFloatShaderOps;
  BOOL                                  OutputMergerLogicOp;
  D3D12_SHADER_MIN_PRECISION_SUPPORT    MinPrecisionSupport;
  D3D12_TILED_RESOURCES_TIER            TiledResourcesTier;
  D3D12_RESOURCE_BINDING_TIER           ResourceBindingTier;
  BOOL                                  PSSpecifiedStencilRefSupported;
  BOOL                                  TypedUAVLoadAdditionalFormats;
  BOOL                                  ROVsSupported;
  D3D12_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier;
  UINT                                  MaxGPUVirtualAddressBitsPerResource;
  BOOL                                  StandardSwizzle64KBSupported;
  D3D12_CROSS_NODE_SHARING_TIER         CrossNodeSharingTier;
  BOOL                                  CrossAdapterRowMajorTextureSupported;
  BOOL                                  VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation;
  D3D12_RESOURCE_HEAP_TIER              ResourceHeapTier;
} D3D12_FEATURE_DATA_D3D12_OPTIONS;

メンバー

DoublePrecisionFloatShaderOps

シェーダー操作に 対して二重 型を許可するかどうかを指定します。 TRUE の場合は、double 型を使用できます。それ以外の場合は FALSE。 サポートされている操作は、D3D11_FEATURE_DATA_D3D11_OPTIONS構造体の Direct3D 11 の ExtendedDoublesShaderInstructions メンバーと同じです。

double 型でコンパイルされた HLSL シェーダーを使用するには、ランタイムで DoublePrecisionFloatShaderOpsTRUE に設定する必要があります。

OutputMergerLogicOp

ロジック操作をブレンド状態で使用できるかどうかを指定します。 ロジック操作がブレンド状態で使用可能な場合はランタイムによってこのメンバーが TRUE に設定され、それ以外の場合は FALSE に 設定されます。 このメンバーは、機能レベル 9.1、9.2、9.3 の 場合は FALSE です。 このメンバーは、機能レベル 10、10.1、および 11 では省略可能です。 このメンバーは、機能レベル 11.1 および 12 の 場合は TRUE です。

MinPrecisionSupport

ビットごとの OR 演算を使用して結合される D3D12_SHADER_MIN_PRECISION_SUPPORT型指定された値の組み合わせ。 結果の値は、ドライバーがシェーダー ステージに対してサポートする最小有効桁数レベルを指定します。 0 の値は、ドライバーがすべてのシェーダー ステージに対して完全な 32 ビット精度のみをサポートすることを示します。

TiledResourcesTier

ハードウェアとドライバーがタイル リソースをサポートするかどうかを指定します。 ランタイムは、このメンバーを D3D12_TILED_RESOURCES_TIER型指定された値に設定します。これは、ハードウェアとドライバーがタイル化されたリソースをサポートしているかどうかを示し、どのレベルレベルでサポートするのかを示します。

ResourceBindingTier

ハードウェアとドライバーがリソース バインドをサポートするレベルを指定します。 ランタイムは、このメンバーを階層レベルを示す D3D12_RESOURCE_BINDING_TIER型指定の値に設定します。

PSSpecifiedStencilRefSupported

ピクセル シェーダー ステンシル ref がサポートされているかどうかを指定します。 TRUE の場合はサポートされます。それ以外の場合は FALSE

TypedUAVLoadAdditionalFormats

型指定された順序なしアクセス ビュー (UAV) の追加形式の読み込みをサポートするかどうかを指定します。 TRUE の場合はサポートされます。それ以外の場合は FALSE

ROVsSupported

ラスタライザーの順序ビュー (ROV) をサポートするかどうかを指定します。 TRUE の場合はサポートされます。それ以外の場合は FALSE

ConservativeRasterizationTier

ハードウェアとドライバーが保守的なラスター化をサポートするレベルを指定します。 ランタイムは、このメンバーを階層レベルを示す D3D12_CONSERVATIVE_RASTERIZATION_TIER型指定の値に設定します。

MaxGPUVirtualAddressBitsPerResource

このフィールドは使用しないでください。代わりに、 D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT クエリ ( MaxGPUVirtualAddressBitsPerResource メンバーを持つ構造体) を使用します。これは、より正確です。

StandardSwizzle64KBSupported

ハードウェアが 64 KB の標準のスワイズル パターンを持つテクスチャをサポートしている場合は TRUE。 このパターンのサポートにより、テクスチャ内の各次元にほぼ等しい局所性を提供しながら、ゼロ コピー テクスチャの最適化が可能になります。 テクスチャスワイズルのオプションと制限については、「 D3D12_TEXTURE_LAYOUT」を参照してください。

CrossNodeSharingTier

階層 1 エミュレート、階層 1、階層 2 など、複数のノードを持つアダプターのノード間の共有のレベルを指定するD3D12_CROSS_NODE_SHARING_TIER列挙定数。

CrossAdapterRowMajorTextureSupported

FALSE は、デバイスがクロスアダプター行メジャー テクスチャとの間のコピー操作のみをサポートすることを意味します。 TRUE は、デバイスがシェーダー リソース ビュー、順序付けられていないアクセス ビュー、およびアダプター間の行メジャー テクスチャのターゲット ビューをレンダリングするをサポートします。 "クロスアダプター" とは、(異なる IHV からでも) 複数のアダプター間を意味します。

VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation

ラスタライザーを供給するシェーダーからのビューポート (VP) とレンダー ターゲット (RT) 配列インデックスが、ジオメトリ シェーダー エミュレーションなしでサポートされているかどうか。 D3D11_FEATURE_DATA_D3D11_OPTIONS3構造体の VPAndRTArrayIndexFromAnyShaderFeedingRasterizer メンバーを比較します。 ID3D12ShaderReflection::GetRequiresFlags で、#define D3D_SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER を参照してください。

ResourceHeapTier

ハードウェアとドライバーがリソースの種類に関連するヒープ属性を必要とするレベルを指定します。 ランタイムは、このメンバーを D3D12_RESOURCE_HEAP_TIER 列挙定数に設定します。

注釈

「D3D12_FEATURE」を参照してください。

要件

要件
Header d3d12.h

こちらもご覧ください

保守的なラスター化

コア構造

D3D12_FEATURE

ラスタライザー順序指定ビュー