10Level9 ID3D11Device, méthodes
Cette section répertorie les différences entre chaque niveau de fonctionnalité 10Level9 et le niveau de fonctionnalité D3D_FEATURE_LEVEL_11_0 et supérieur pour les méthodes ID3D11Device .
- ID3D11Device::CheckCounter
- ID3D11Device::CheckFormatSupport
- ID3D11Device::CheckMultisampleQualityLevels
- ID3D11Device::CreateBlendState
- ID3D11Device::CreateBlendState1
- ID3D11Device::CreateBuffer
- ID3D11Device::CreateCounter
- ID3D11Device::CreateDepthStencilView
- ID3D11Device::CreateDomainShader
- ID3D11Device::CreateGeometryShader
- ID3D11Device::CreateGeometryShaderWithStreamOutput
- ID3D11Device::CreateHullShader
- ID3D11Device::CreateInputLayout
- ID3D11Device::CreatePixelShader
- ID3D11Device::CreatePredicate
- ID3D11Device::CreateQuery
- ID3D11Device::CreateRasterizerState
- ID3D11Device::CreateRenderTargetView
- ID3D11Device::CreateSamplerState
- ID3D11Device::CreateShaderResourceView
- ID3D11Device::CreateTexture1D
- ID3D11Device::CreateTexture2D
- ID3D11Device::CreateTexture3D
- ID3D11Device::CreateUnorderedAccessView
- ID3D11Device::CreateVertexShader
- ID3D11Device::OpenSharedResource
- Rubriques connexes
ID3D11Device::CheckCounter
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Les compteurs dépendant de l’appareil sont éventuellement pris en charge. Utilisez ID3D11Device::CheckCounterInfo pour déterminer la prise en charge.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CheckFormatSupport
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Consultez Prise en charge des formats par niveau de fonctionnalité${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CheckMultisampleQualityLevels
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Les niveaux de fonctionnalité n’offrent aucune garantie concernant la prise en charge MSAA.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateBlendState
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | AlphaToCoverageEnable doit avoir la valeur FALSE. Les quatre premiers BlendEnables doivent avoir la même valeur. D3D11_BLEND_SRC_ALPHASAT pas pris en charge. Le mélange de couleurs double source n’est pas pris en charge (SrcBlend ou DestBlend avec SRC1 dans le nom) |
D3D_FEATURE_LEVEL_9_2 | AlphaToCoverageEnable doit avoir la valeur FALSE. Les quatre premiers BlendEnables doivent avoir la même valeur. Les quatre premiers RenderTargetWriteMasks doivent tous avoir la même valeur. D3D11_BLEND_SRC_ALPHASAT pas pris en charge. Le mélange de couleurs double source n’est pas pris en charge (SrcBlend ou DestBlend avec SRC1 dans le nom) |
D3D_FEATURE_LEVEL_9_3 | AlphaToCoverageEnable doit avoir la valeur FALSE. Les quatre premiers BlendEnables doivent avoir la même valeur. D3D11_BLEND_SRC_ALPHASAT pas pris en charge. Le mélange de couleurs double source n’est pas pris en charge (SrcBlend ou DestBlend avec SRC1 dans le nom) |
D3D_FEATURE_LEVEL_10_0 | Ajoute l’alpha à la couverture |
ID3D11Device::CreateBlendState1
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge |
D3D_FEATURE_LEVEL_9_2 | Non pris en charge |
D3D_FEATURE_LEVEL_9_3 | Non pris en charge |
D3D_FEATURE_LEVEL_10_0 | Le membre OutputMergerLogicOp a été ajouté à D3D11_FEATURE_DATA_D3D11_OPTIONS, afin de déterminer la prise en charge des opérations logiques (opérations logiques au niveau du bit entre la sortie du nuanceur de pixels et le rendu du contenu cible, reportez-vous à D3D11_RENDER_TARGET_BLEND_DESC1). |
ID3D11Device::CreateBuffer
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Les mémoires tampons ne peuvent pas avoir de vues cibles de rendu. Les mémoires tampons doivent avoir exactement l’une des D3D11_BIND_VERTEX_BUFFER, D3D11_BIND_INDEX_BUFFER ou D3D11_BIND_CONSTANT_BUFFER. Autorise uniquement les mémoires tampons d’index au format DXGI_FORMAT_R16_UINT. |
D3D_FEATURE_LEVEL_9_2 | Les mémoires tampons ne peuvent pas avoir de vues cibles de rendu. Les mémoires tampons doivent avoir exactement l’une des D3D11_BIND_VERTEX_BUFFER, D3D11_BIND_INDEX_BUFFER ou D3D11_BIND_CONSTANT_BUFFER. Autorise les mémoires tampons d’index avec les formats DXGI_FORMAT_R16_UINT et DXGI_FORMAT_R32_UINT tels que D3D_FEATURE_LEVEL_10_0 et versions ultérieures. ${REMOVE}$ |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateCounter
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur n’importe quel niveau de fonctionnalité 9.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateDepthStencilView
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Ne prend pas en charge le gabarit double face.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateDomainShader
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur les niveaux de fonctionnalité 9.* ou 10.*. ${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 | |
D3D_FEATURE_LEVEL_10_0 | |
D3D_FEATURE_LEVEL_10_1 |
ID3D11Device::CreateGeometryShader
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur n’importe quel niveau de fonctionnalité 9.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateGeometryShaderWithStreamOutput
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur n’importe quel niveau de fonctionnalité 9.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateHullShader
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur les niveaux de fonctionnalité 9.* ou 10.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 | |
D3D_FEATURE_LEVEL_10_0 | |
D3D_FEATURE_LEVEL_10_1 |
ID3D11Device::CreateInputLayout
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Ne prend pas en charge les D3D11_INPUT_PER_INSTANCE_DATA |
D3D_FEATURE_LEVEL_9_2 | Ne prend pas en charge les D3D11_INPUT_PER_INSTANCE_DATA |
D3D_FEATURE_LEVEL_9_3 | Le flux de vertex zéro doit avoir D3D11_INPUT_PER_VERTEX_DATA, si des flux ont D3D11_INPUT_PER_VERTEX_DATA |
Consultez le graphique Prise en charge des formats par niveau de fonctionnalité pour plus d’informations sur les formats pouvant être utilisés pour les données de vertex à chaque niveau de fonctionnalité.
ID3D11Device::CreatePixelShader
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Doit utiliser ps_4_0_level_9_1 |
D3D_FEATURE_LEVEL_9_2 | Doit utiliser ps_4_0_level_9_1 |
D3D_FEATURE_LEVEL_9_3 | Doit utiliser ps_4_0_level_9_3 ou ps_4_0_level_9_1 |
ID3D11Device::CreatePredicate
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur n’importe quel niveau de fonctionnalité 9.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateQuery
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Les requêtes d’événement sont prises en charge. Les requêtes d’horodatage sont facultatives : appelez CreateQuery pour déterminer la prise en charge. |
D3D_FEATURE_LEVEL_9_2 | Les requêtes d’événement et d’occlusion sont prises en charge. Les requêtes d’horodatage sont facultatives : appelez CreateQuery pour déterminer la prise en charge. |
D3D_FEATURE_LEVEL_9_3 | Les requêtes d’événement et d’occlusion sont prises en charge. Les requêtes d’horodatage sont facultatives : appelez CreateQuery pour déterminer la prise en charge. |
ID3D11Device::CreateRasterizerState
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | DepthClipEnable doit avoir la valeur TRUE. DepthBiasClamp doit être défini sur 0.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateRenderTargetView
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Peut uniquement prendre en charge les affichages cibles de rendu des objets Texture2D.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateSamplerState
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Le filtre de comparaison n’est pas pris en charge. La couleur de bordure doit se trouver dans [0,1] Min LOD ne peut pas être fractionnaire Le nombre maximal de LOD doit être FLT_MAX L’anisotropie maximale est de 2. D3D11_TEXTURE_ADDRESS_MIRRORONCE pas pris en charge. |
D3D_FEATURE_LEVEL_9_2 | Le filtre de comparaison n’est pas pris en charge. La couleur de bordure doit se trouver dans [0,1] Min LOD ne peut pas être fractionnaire Le nombre maximal de LOD doit être FLT_MAX L’anisotropie maximale est de 16. ${REMOVE}$ |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateShaderResourceView
Niveau de fonctionnalité | MostDetailedMip plus MipLevels doivent inclure le LOD le plus faible (la plus petite sous-ressource) | L’affichage doit inclure tous les éléments du tableau de ressources |
---|---|---|
D3D_FEATURE_LEVEL_9_1 | Oui | Oui |
D3D_FEATURE_LEVEL_9_2 | Oui | Oui |
D3D_FEATURE_LEVEL_9_3 | Oui | Oui |
ID3D11Device::CreateTexture1D
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur un niveau de fonctionnalité 9.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateTexture2D
Les ressources Texture2D ont des limites de largeur et de hauteur qui diffèrent d’un niveau à l’autre. Dans les niveaux de fonctionnalité 9_3, les minima suivants sont garantis, et les implémentations individuelles peuvent dépasser les exigences.
Niveau de fonctionnalité | Si MipCount > 1, les dimensions doivent avoir la puissance intégrale de deux | Dimension de texture minimale prise en charge | Les dimensions des textures de cube doivent être de deux puissances | Si MISC_TEXTURECUBE est défini, arraySize est : | Si MISC_TEXTURECUBE n’est pas défini, arraySize est. |
---|---|---|---|---|---|
D3D_FEATURE_LEVEL_9_1 | Yes | 2 048 | Oui | 6 | 1 |
D3D_FEATURE_LEVEL_9_2 | Yes | 2 048 | Oui | 6 | 1 |
D3D_FEATURE_LEVEL_9_3 | Yes | 4096 | Oui | 6 | 1 |
Dans le tableau précédent, le nom complet de MISC_TEXTURECUBE est D3D11_RESOURCE_MISC_TEXTURECUBE.
Les valeurs suivantes sont vraies pour tous les niveaux de fonctionnalités 9_* :
- Lorsque vous utilisez D3D11_USAGE_DEFAULT ou D3D11_USAGE_IMMUTABLE, BindFlags ne peut pas être égal à zéro.
- Lorsque vous utilisez D3D11_BIND_DEPTH_STENCIL, MipLevels doit avoir la valeur 1.
- Lorsque vous utilisez D3D11_BIND_SHADER_RESOURCE, SampleDesc.Count doit être 1.
- Lorsque vous utilisez D3D11_BIND_PRESENT, la ressource ne peut pas avoir de D3D11_BIND_SHADER_RESOURCE.
- Lorsque vous utilisez D3D10_DDI_RESOURCE_MISC_SHARED, format ne peut pas être DXGI_FORMAT_R8G8B8A8_UNORM ou DXGI_FORMAT_R8G8B8A8_UNORM_SRGB.
ID3D11Device::CreateTexture3D
Niveau de fonctionnalité | Dimension maximale (n’importe quel axe) | Les dimensions doivent être de deux puissances |
---|---|---|
D3D_FEATURE_LEVEL_9_1 | 256 | Oui |
D3D_FEATURE_LEVEL_9_2 | 512 | Oui |
D3D_FEATURE_LEVEL_9_3 | 512 | Oui |
Si la ressource est D3D11_USAGE_DEFAULT ou D3D11_USAGE_IMMUTABLE, BindFlags ne peut pas être égal à zéro.
ID3D11Device::CreateUnorderedAccessView
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Non pris en charge sur un niveau de fonctionnalité 9.*.${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |
ID3D11Device::CreateVertexShader
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Doit utiliser vs_4_0_level_9_1 |
D3D_FEATURE_LEVEL_9_2 | Doit utiliser vs_4_0_level_9_1 |
D3D_FEATURE_LEVEL_9_3 | Doit utiliser vs_4_0_level_9_3 ou vs_4_0_level_9_1 |
ID3D11Device::OpenSharedResource
Niveau de fonctionnalité | Différences de comportement |
---|---|
D3D_FEATURE_LEVEL_9_1 | Utilisez ID3D11Device::CheckFeatureSupport avec la valeur D3D11_FEATURE_FORMAT_SUPPORT2 et la structure D3D11_FEATURE_DATA_FORMAT_SUPPORT2 pour déterminer si un format peut être partagé. Si le format peut être partagé, CheckFeatureSupport renvoie l’indicateur D3D11_FORMAT_SUPPORT2_SHAREABLE . Remarque :DXGI_FORMAT_R8G8B8A8_UNORM et DXGI_FORMAT_R8G8B8A8_UNORM_SRGB ne sont jamais partageables lors de l’utilisation du niveau de fonctionnalité 9, même si l’appareil indique une prise en charge facultative des fonctionnalités pour D3D11_FORMAT_SUPPORT_SHAREABLE. La tentative de création de ressources partagées avec des formats DXGI DXGI_FORMAT_R8G8B8A8_UNORM et DXGI_FORMAT_R8G8B8A8_UNORM_SRGB échoue toujours, sauf si le niveau de fonctionnalité est 10_0 ou supérieur. ${REMOVE}$ |
D3D_FEATURE_LEVEL_9_2 | |
D3D_FEATURE_LEVEL_9_3 |