Metodo ID3D12ShaderReflection::GetRequiresFlags (d3d12shader.h)
Recupera un gruppo di flag che indicano i requisiti di uno shader.
Sintassi
UINT64 GetRequiresFlags();
Valore restituito
Tipo: UINT64
Valore che contiene una combinazione di uno o più flag di requisiti #define
shader. Ogni flag specifica un requisito dello shader. Un valore predefinito pari a 0 indica che non sono presenti requisiti.
D3D_SHADER_REQUIRES_DOUBLES. Shader richiede che il driver grafico e l'hardware supportino il tipo di dati double .
D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL. Shader richiede uno stencil di profondità iniziale.
D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE. Shader richiede viste di accesso non ordinate (UAV) in ogni fase della pipeline.
D3D_SHADER_REQUIRES_64_UAVS. Shader richiede 64 UAV.
D3D_SHADER_REQUIRES_MINIMUM_PRECISION. Shader richiede il driver grafico e l'hardware per supportare la precisione minima. Per altre informazioni, vedere Uso della precisione minima di HLSL.
D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS. Shader richiede che il driver di grafica e il supporto hardware siano estese doppie istruzioni. Per altre informazioni, vedere il membro ExtendedDoublesShaderInstructions di D3D12_FEATURE_DATA_D3D12_OPTIONS.
D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS. Shader richiede che il driver grafico e l'hardware supportino la funzione intrinseca msad4 negli shader. Per altre informazioni, vedere il membro SAD4ShaderInstructions di D3D12_FEATURE_DATA_D3D12_OPTIONS.
D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING. Shader richiede che il driver grafico e l'hardware supportino il supporto shadow Direct3D 9.
D3D_SHADER_REQUIRES_TILED_RESOURCES. Shader richiede che il driver grafico e le risorse hardware supportino le risorse riquadri.
D3D_SHADER_REQUIRES_STENCIL_REF. Shader richiede un valore di riferimento per i test di profondità stencil. Per altre informazioni, vedere il membro PSSpecifiedStencilRefSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS e ID3D12GraphicsCommandList::OMSetStencilRef.
D3D_SHADER_REQUIRES_INNER_COVERAGE. Shader richiede che il driver grafico e l'hardware supportino la copertura interna. Per altre informazioni, vedere le costanti di enumerazione D3D_NAME_INNER_COVERAGE e D3D11_NAME_INNER_COVERAGE in D3D_NAME.
D3D_SHADER_REQUIRES_TYPED_UAV_LOAD_ADDITIONAL_FORMATS. Shader richiede che il driver grafico e l'hardware supportino il caricamento di formati aggiuntivi per le visualizzazioni di accesso non ordinate (UAV). Vedere il membro TypedUAVLoadAdditionalFormats della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS .
D3D_SHADER_REQUIRES_ROVS. Shader richiede che il driver grafico e il supporto hardware supportino le visualizzazioni ordinate di rasterizer (ROV). Vedere Visualizzazioni ordinate di Rasterizer.
D3D_SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER. Shader richiede che il driver grafico e il supporto hardware supportino il viewport e eseguano il rendering dei valori di indice della matrice di destinazione da qualsiasi rasterizzatore di alimentazione shader. Per altre informazioni, vedere il membro VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS .
D3D_SHADER_REQUIRES_WAVE_OPS. Shader richiede che il driver grafico e l'hardware supportino le operazioni di onda. Per altre informazioni, vedere Il membro WaveOps della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS1 .
D3D_SHADER_REQUIRES_INT64_OPS. Shader richiede che il driver grafico e l'hardware supportino operazioni intere a 64 bit. Per altre informazioni, vedere il membro Int64ShaderOps della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS1 .
D3D_SHADER_REQUIRES_VIEW_ID. Shader richiede che il driver grafico e la visualizzazione del supporto hardware siano instancing usando SV_ViewID. Per altre informazioni, vedere il membro ViewInstancingTier della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS3 .
D3D_SHADER_REQUIRES_BARYCENTRICS. Shader richiede che il driver grafico e l'hardware supportino barycentrici usando SV_Barycentrics. Per altre informazioni, vedere il membro BarycentricsSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS3 .
D3D_SHADER_REQUIRES_NATIVE_16BIT_OPS. Shader richiede che il driver grafico e l'hardware supportino operazioni native a 16 bit. Per altre informazioni, vedere il membro Native16BitShaderOpsSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS4 .
D3D_SHADER_REQUIRES_SHADING_RATE. Shader richiede che il driver grafico e l'hardware supportino la funzionalità Variabile Velocità ombreggiatura (VRS). Per altre informazioni, vedere Il membro VariableShadingRateTier della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS6 .
D3D_SHADER_REQUIRES_RAYTRACING_TIER_1_1. Shader richiede che il driver grafico e l'hardware supportino DXR livello 1.1. Per altre informazioni, vedere il membro RaytracingTier della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS5 .
D3D_SHADER_REQUIRES_SAMPLER_FEEDBACK. Shader richiede che il driver grafico e il supporto hardware di Sampler Feedback. Per altre informazioni, vedere Il membro SamplerFeedbackTier della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS7 .
D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_TYPED_RESOURCE. Shader richiede che il driver grafico e il supporto hardware int64 atomici su risorse tipite. Per altre informazioni, vedere il membro AtomicInt64OnTypedResourceSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS9 .
D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_GROUP_SHARED. Shader richiede che il driver di grafica e il supporto hardware int64 atomici sulla memoria condivisi dai gruppi. Per altre informazioni, vedere il membro AtomicInt64OnGroupSharedSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS9 .
D3D_SHADER_REQUIRES_DERIVATIVES_IN_MESH_AND_AMPLIFICATION_SHADERS. Shader richiede che il driver grafico e l'hardware supportino derivati in mesh e shader di amplificazione. Per altre informazioni, vedere il membro DerivativesInMeshAndAmplificationShadersSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS9 .
D3D_SHADER_REQUIRES_RESOURCE_DESCRIPTOR_HEAP_INDEXING. Shader richiede che il driver grafico e l'hardware supportino risorse dinamiche (requisito per Shader Model 6.6) e ResourceDescriptorHeap in particolare. Per altre informazioni, vedere la specifica delle risorse DINAMICHE HLSL in GitHub.
D3D_SHADER_REQUIRES_SAMPLER_DESCRIPTOR_HEAP_INDEXING. Shader richiede che il driver grafico e l'hardware supportino risorse dinamiche (requisito per Shader Model 6.6) e SamplerDescriptorHeap in particolare. Per altre informazioni, vedere la specifica delle risorse DINAMICHE HLSL in GitHub.
D3D_SHADER_REQUIRES_WAVE_MMA. Shader richiede che il driver grafico e il supporto hardware di Wave MMA. Per altre informazioni, vedere il membro WaveMMATier della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS9 .
D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE. Shader richiede che il driver grafico e il supporto hardware int64 atomici per le risorse heap descrittori. Per altre informazioni, vedere il membro AtomicInt64OnDescriptorHeapResourceSupported della struttura D3D12_FEATURE_DATA_D3D12_OPTIONS11 .
Commenti
Ecco come il d3d12shader.h
file di intestazione definisce i flag dei requisiti dello shader:
#define D3D_SHADER_REQUIRES_DOUBLES 0x00000001
#define D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL 0x00000002
#define D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE 0x00000004
#define D3D_SHADER_REQUIRES_64_UAVS 0x00000008
#define D3D_SHADER_REQUIRES_MINIMUM_PRECISION 0x00000010
#define D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS 0x00000020
#define D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS 0x00000040
#define D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING 0x00000080
#define D3D_SHADER_REQUIRES_TILED_RESOURCES 0x00000100
#define D3D_SHADER_REQUIRES_STENCIL_REF 0x00000200
#define D3D_SHADER_REQUIRES_INNER_COVERAGE 0x00000400
#define D3D_SHADER_REQUIRES_TYPED_UAV_LOAD_ADDITIONAL_FORMATS 0x00000800
#define D3D_SHADER_REQUIRES_ROVS 0x00001000
#define D3D_SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER 0x00002000
#define D3D_SHADER_REQUIRES_WAVE_OPS 0x00004000
#define D3D_SHADER_REQUIRES_INT64_OPS 0x00008000
#define D3D_SHADER_REQUIRES_VIEW_ID 0x00010000
#define D3D_SHADER_REQUIRES_BARYCENTRICS 0x00020000
#define D3D_SHADER_REQUIRES_NATIVE_16BIT_OPS 0x00040000
#define D3D_SHADER_REQUIRES_SHADING_RATE 0x00080000
#define D3D_SHADER_REQUIRES_RAYTRACING_TIER_1_1 0x00100000
#define D3D_SHADER_REQUIRES_SAMPLER_FEEDBACK 0x00200000
#define D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_TYPED_RESOURCE 0x00400000
#define D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_GROUP_SHARED 0x00800000
#define D3D_SHADER_REQUIRES_DERIVATIVES_IN_MESH_AND_AMPLIFICATION_SHADERS 0x01000000
#define D3D_SHADER_REQUIRES_RESOURCE_DESCRIPTOR_HEAP_INDEXING 0x02000000
#define D3D_SHADER_REQUIRES_SAMPLER_DESCRIPTOR_HEAP_INDEXING 0x04000000
#define D3D_SHADER_REQUIRES_WAVE_MMA 0x08000000
#define D3D_SHADER_REQUIRES_ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE 0x10000000
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d12shader.h |