estrutura D3D11_FEATURE_DATA_D3D9_OPTIONS1 (d3d11.h)
Sintaxe
typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS1 {
BOOL FullNonPow2TextureSupported;
BOOL DepthAsTextureWithLessEqualComparisonFilterSupported;
BOOL SimpleInstancingSupported;
BOOL TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported;
} D3D11_FEATURE_DATA_D3D9_OPTIONS1;
Membros
FullNonPow2TextureSupported
Especifica se o driver dá suporte ao recurso não-powers-of-2 incondicionalmente. Para obter mais informações sobre esse recurso, consulte nível de recurso. O runtime define esse membro como TRUE para hardware em Direct3D 10 e níveis de recursos mais altos. Para hardware no Direct3D 9.3 e níveis de recursos inferiores, o runtime define esse membro como FALSE se o hardware e o driver derem suporte a potências de 2 (texturas 2D devem ter larguras e alturas especificadas como potências de dois) ou o recurso não poderoso de 2 condicionalmente.
DepthAsTextureWithLessEqualComparisonFilterSupported
Especifica se o driver dá suporte ao recurso de sombreamento com o modo de filtragem de comparação definido como menor ou igual a. O runtime define esse membro como TRUE para hardware em Direct3D 10 e níveis de recursos mais altos. Para hardware no Direct3D 9.3 e níveis inferiores de recursos, o runtime define esse membro como TRUE somente se o hardware e o driver derem suporte ao recurso de sombreamento; caso contrário , FALSE.
SimpleInstancingSupported
Especifica se o hardware e o driver dão suporte à instanciação simples. O runtime define esse membro como TRUE se o hardware e o driver deem suporte à instanciação simples.
TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported
Especifica se o hardware e o driver dão suporte à configuração de uma única face de um TextureCube como um destino de renderização, enquanto a superfície de estêncil de profundidade associada ao pode ser um Texture2D (em vez de TextureCube). O runtime define esse membro como TRUE se o hardware e o driver deem suporte a esse recurso; caso contrário , FALSE.
Se o hardware e o driver não derem suporte a esse recurso, o aplicativo deverá corresponder ao tipo de superfície de destino de renderização com o tipo de superfície de estêncil de profundidade. Como o hardware no Direct3D 9.3 e níveis inferiores de recursos não permitem superfícies de profundidade TextureCube , a única maneira de renderizar uma cena em um TextureCube enquanto tem o buffer de profundidade habilitado é renderizar cada face TextureCube separadamente para um destino de renderização Texture2D primeiro (porque isso pode ser correspondido com uma profundidade Texture2D ) e, em seguida, copiar os resultados para o TextureCube. Se o hardware e o driver derem suporte a esse recurso, o aplicativo poderá apenas renderizar para os rostos TextureCube diretamente enquanto recebe o buffer de profundidade de um buffer de profundidade Texture2D .
Você só precisa consultar esse recurso de hardware no Direct3D 9.3 e níveis de recursos inferiores porque o hardware no Direct3D 10.0 e níveis de recursos mais altos permitem superfícies de profundidade TextureCube .
Comentários
Você pode usar o valor de enumeração D3D11_FEATURE_D3D9_OPTIONS1 com ID3D11Device::CheckFeatureSupport para consultar um driver sobre o suporte para opções de recursos do Direct3D 9 em vez de fazer várias chamadas para ID3D11Device::CheckFeatureSupport usando D3D11_FEATURE_D3D9_OPTIONS, D3D11_FEATURE_D3D9_SHADOW_SUPPORT e D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT, que fornecem informações idênticas sobre as opções de recursos compatíveis do Direct3D 9.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8.1 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2012 R2 [somente aplicativos da área de trabalho] |
Cabeçalho | d3d11.h |