Higher-Order primitivos (Direct3D 9)
O Direct3D 9 suporta pontos, linhas, triângulos e primitivas de grade. Estes foram alargados para suportar a interpolação de ordem superior para além da linear. Enquanto triângulos e linhas têm extensão espacial, até agora ambos eram renderizados usando interpolação linear. No Direct3D 9, o Direct3D suporta a renderização desses tipos primitivos usando interpolação de ordem superior, até quíntico. Além disso, um novo tipo primitivo quad agora é suportado. Este novo tipo também pode ser renderizado com interpolação de ordem superior. Esse recurso é impulsionado principalmente por requisitos de animação e renderização de personagens. Também pode ser usado para outras superfícies, como terreno ou água.
Primitivos de ordem superior suportam interpolação de ordem superior quando transmitidos para a API como listas, faixas, ventiladores ou malhas indexadas. Isto é conseguido usando informações adicionais codificadas nos próprios vértices. Por exemplo, vetores normais podem ser usados para definir planos tangente nos vértices para permitir a interpolação cúbica. A maioria das implementações suporta interpolação de ordem superior por tesselação em triângulos planares. A etapa de tesselação é aplicada logicamente antes do estágio de sombreador de vértice. Como a API de sombreador de vértice não impõe semântica em seus dados de entrada, um mecanismo especial é fornecido para identificar o componente de fluxo de vértice que representa a posição e, opcionalmente, o vetor normal. Todos os outros componentes são interpolados em conformidade.
Esta seção apresenta primitivos de ordem superior e discute como eles podem ser usados em seus aplicativos. As informações estão divididas nos seguintes tópicos.
Qualidade melhorada através da melhoria da resolução
As primitivas atuais não são ideais para representar superfícies lisas. Métodos de interpolação de ordem superior, como polinômios cúbicos, permitem cálculos mais precisos na renderização de formas curvas. Isso proporciona maior realismo, reduzindo ou eliminando artefatos de faceta visíveis nas bordas da silhueta ou na iluminação da superfície especular. Além disso, quando a tesselação ocorre no chip, os triângulos tessellados não afetam a largura de banda do barramento. Em muitos casos, uma pequena quantidade de tesselação pode fornecer melhorias na qualidade da imagem com impacto mínimo no desempenho.
O Direct3D 9 fornece uma maneira simples de aplicar o aprimoramento de resolução ao conteúdo criado por ferramentas orientadas a polígonos e pipelines de arte existentes. O aplicativo só precisa fornecer um nível desejado de tesselação e transmitir os dados usando sintaxe de triângulo padrão que inclui vetores normais.
Mapeamento direto a partir de ferramentas Spline-Based
Muitas ferramentas de criação atuais suportam primitivos de ordem superior para permitir operações de modelagem mais poderosas do que as normalmente fornecidas com malhas de triângulo planas. Quando usadas de forma eficiente, para que o número de patches gerados seja razoável, essas ferramentas podem produzir conteúdo que pode ser renderizado diretamente pela API. Para atender a esse requisito, um novo ponto de entrada foi adicionado que interpreta o fluxo de dados de vértice de entrada como uma matriz 2D de pontos de controle e o testa para a resolução desejada.
Tópicos relacionados