Recursos preteridos (Direct3D 10)
Uma lista dos recursos disponíveis no Direct3D 10 está aqui. Esta página lista os recursos do Direct3D 9 que não têm mais suporte no Direct3D 10.
As maiores alterações de recursos no Direct3D 10 são:
- O Direct3D 10 não dá mais suporte à transformação de função fixa e ao pipeline de iluminação.
- O Direct3D 10 não dá mais suporte ao liquidificador de textura de função fixa (às vezes chamado de sombreador de pixel de função fixa).
- O Direct3D 10 implementa novas regras de rasterização, que são mais simples e limpas do que as regras de GDI herdadas implementadas no Direct3D 9. Por exemplo, não há mais suporte para o controle de último pixel para linhas.
Aqui está uma lista completa dos recursos no Direct3D 9 que foram preteridos no Direct3D 10.
Mistura alfa. A mistura alfa agora é programada independentemente da mistura de cores. O Direct3D 10 adiciona uma alternância alpha-blend-enable que está habilitada por padrão. Confira Objetos de Estado (Direct3D 10) para obter mais informações.
Teste alfa. O teste alfa é um comportamento de pixel de função fixa para Direct3D 9. O teste alfa é movido para sombreadores de pixel programáveis para Direct3D 10 e superior. Para obter informações sobre como emular a funcionalidade de teste alfa do Direct3D 9 no Direct3D 10 e superior, consulte o exemplo FixedFuncEMU no SDK do DirectX para junho de 2010.
Opções de modo de mesclagem. BOTHSRCALPHA foi removido do D3D10_BLEND, pois é redundante com BOTHINVSRCALPHA. Consulte D3D10_BLEND para obter mais informações.
Bloquear formatos de compactação. Não há distinção entre alfa pré-multiplicado ou alfa não pré-multiplicado no Direct3D 10. Esses formatos do Direct3D 9 são mapeados para estes formatos direct3D 10:
Direct3D 9 Direct3D 10 DXT1 BC1* DXT2,DXT3 BC2* DXT4,DXT5 BC3* Consulte Compactação de bloco (Direct3D 10) para obter informações adicionais.
Planos de recorte. Em vez de usar planos de recorte, o Direct3D 10 implementa distâncias de recorte e distâncias de recorte, com até 8 componentes cada um em até 2 elementos de atributos de vértice. Consulte Semântica (DirectX HLSL) para obter informações adicionais. O exemplo FixedFuncEMU fornece um exemplo de emulação de planos de recorte no Direct3D 10.
Dithering. O Direct3D 10 não dá suporte à gravação de dados dithered em um destino de renderização.
Transformação de função fixa e pipeline de iluminação não disponíveis. Em vez disso, você deve usar sombreadores. Confira Estágios do Sombreador (Direct3D 10) para obter informações adicionais.
Liquidificador de textura de função fixa (também chamado de sombreador de pixel de função fixa). Em vez disso, você deve usar sombreadores. Confira Estágios do Sombreador (Direct3D 10) para obter informações adicionais.
Os modos de preenchimento foram alterados . O Direct3D 10 implementa modos de preenchimento sólidos e de wireframe. O ponto D3DFILLMODE foi removido, use um sombreador de geometria para emular o modo de ponto, se necessário. O exemplo FixedFuncEMU fornece um exemplo de emulação do ponto D3DFILLMODE no Direct3D 10. Consulte D3D10_FILL_MODE e Estágios de Sombreador (Direct3D 10) para obter informações adicionais.
Formatos. O hardware pode usar formatos expostos pela API. Os formatos de luminância não são mais implementados.
Filtragem de mipmap. Removida a opção para selecionar o modo sem filtro. Em vez disso, use uma textura com apenas um mipmap ou defina o estado do sampler MaxLOD como 0. Confira Objetos de Estado (Direct3D 10) para obter informações adicionais.
Paletas. Em vez disso, os aplicativos devem usar uma textura dependente lida.
Modelos de sombreador de pixel e vértice: 1_x, 2_x e 3_0. O Direct3D 10 dá suporte ao modelo de sombreador 4. Consulte Modelo de sombreador 4 para obter informações adicionais.
Sprites de ponto. Em vez disso, use um sombreador de geometria. Confira Estágios do Sombreador (Direct3D 10) para obter informações adicionais.
Regras de rasterização. As regras de rasterização de linha GDI herdadas são substituídas por regras mais limpas e simples. Não há mais suporte para o controle de último pixel para linhas. Consulte Regras de rasterização (Direct3D 10) para obter informações adicionais.
Modos de sombreamento. D3DSHADEMODE (que dá suporte ao sombreamento simples/gouraud/phong) foi removido. Em vez disso, o Direct3D 10 implementa dois modificadores de interpolações para saídas de sombreador de vértice. Consulte Exemplo de FixedFuncEMU para obter um exemplo de emulação de modos de sombra simples e gouraud direct3D 9 no Direct3D 10.
Instrução texldp. Um aplicativo deve implementar uma carga de textura projetada com instruções HLSL extras. Consulte Referência para HLSL para obter informações adicionais. O exemplo FixedFuncEMU fornece um exemplo de emulação de texldp no Direct3D 10.
Não há mais suporte para o estado do estágio de textura (D3DTSS_TEXCOORDINDEX) do TCI (índice de coordenadas de textura).
Ventiladores de triângulo. Um aplicativo deve converter os fãs de triângulo existentes em listas de triângulos ou faixas de triângulos. Para emular alguns comportamentos usando DrawPrimitive em APIs mais antigas, tente usar DrawIndexed no Direct3D 10. Consulte Topologias primitivas (Direct3D 10) para obter informações adicionais.
Buffer W. O suporte a hardware não é garantido; É recomendável que um aplicativo use buffers de profundidade de alta precisão. Consulte Configurando a funcionalidade de Depth-Stencil (Direct3D 10) para obter informações adicionais.
Modos de encapsulamento (encapsulamento de coordenadas de textura). A disposição do endereço de textura (como encapsulamento, espelho, fixação etc.) ainda existe. Confira D3D10_SAMPLER_DESC e D3D10_TEXTURE_ADDRESS_MODE.
Tópicos relacionados