Referência semântica e anotações padrão do DirectX
As anotações e semânticas padrão (DXSAS) fornecem um método de usar sombreadores de forma padrão que permite que os sombreadores sejam usados com ferramentas, aplicativos e mecanismos de jogo. DXSAS define um conjunto de semânticas e anotações que são anexadas aos valores do aplicativo host e parâmetros de efeito com a finalidade de compartilhar efeitos. Para que essas anotações e semânticas sejam úteis, elas devem ser implementadas no aplicativo host e no arquivo de efeito. Este documento descreve o padrão DXSAS que aproveita o poder do DirectX Effect Framework para permitir que aplicativos e ferramentas de host compartilhem efeitos DirectX (arquivos .fx) programaticamente, bem como para projetar a interação com a interface do usuário.
Informações gerais
As anotações e semânticas padrão são projetadas para vincular parâmetros de efeito e arquivo X aos valores do aplicativo host. O D3DX Effect Framework (ou efeitos) encapsula o estado de renderização. Ao encapsular o estado de renderização (incluindo vértice, textura e estado de processamento de pixel) em um efeito, você pode criar uma biblioteca de efeitos cobrindo uma ampla gama de opções de renderização. Isso pode incluir opções como renderização em diferentes tipos de hardware ou renderização com combinação de uma ou várias passagens. Para obter mais informações sobre a estrutura de efeitos, consulte de referência de efeito. O DXSAS se baseia nessa estrutura, permitindo uma experiência mais consistente para os desenvolvedores. Uma vez que a configuração de renderização é encapsulada em um efeito, o padrão DXSAS permite que o desenvolvedor do efeito exponha a intenção dos parâmetros de efeito por meio de anotações. Essas anotações podem ser lidas por qualquer aplicativo ou ferramenta host (não apenas aquele que foi projetado para usar o efeito) que esteja em conformidade com o padrão e entenderá como usar o efeito da maneira que foi projetada.
Padronizar o conjunto de semântica de efeitos e anotações que os aplicativos host suportam permitem que os autores de efeitos criem efeitos que podem ser usados em vários projetos e, assim, promovam uma comunidade mais ampla de usuários de efeitos. O padrão DXSAS torna os arquivos legíveis pelos desenvolvedores, trocáveis entre ferramentas, e permite que os desenvolvedores aproveitem as ferramentas de terceiros para efeitos de criação para seu pipeline.
Este documento descreve o padrão DXSAS que usa anotações para expressar a intenção dos parâmetros de efeito, bem como definir uma coleção de valores de aplicativo host que os aplicativos host concordam em disponibilizar para um efeito.
Efeitos de criação com anotações padrão e semântica
Como você pode ver no diagrama a seguir, o padrão DXSAS requer anotações em um arquivo de efeito, bem como um aplicativo host que siga as diretrizes descritas aqui para trabalhar com o arquivo.
O aplicativo host deve implementar a lógica da interface do usuário e o ambiente do host. Para implementar efeitos compatíveis com DXSAS, leia os seguintes tópicos:
- O Global Parameter define informações pertinentes ao efeito, como a versão ou o autor do efeito.
- de vinculação de dados define a coleção de parâmetros (bem como seu tipo e estrutura) que podem ser usados por um efeito que pode ser definido pelo aplicativo host exposto aos efeitos.
- Para associar um controle de interface do usuário a um parâmetro effect, use um UI Annotation. Essas anotações incluem: SasUiMax, SasUiMin, SasUiSteps, SasUiStepsPowere SasUiStride.
- Para inicializar um parâmetro de efeito com dados contidos em um arquivo externo, use um Anotação de Inicialização de Parâmetro.
- Quando os dados são transferidos entre o aplicativo host e um efeito (ou vice-versa), de Transmissão e Conversão ocorrerá quando os tipos não corresponderem exatamente. Esta seção especifica como os dados são gravados quando os tipos de origem e destino diferem. Além disso, use ParameterValueModifiers para modificar como o aplicativo host deve interpretar os dados lidos do parâmetro effect. Essas anotações incluem: SasNormalize e SasUnits.
Sensibilidade a maiúsculas e minú
Todos os identificadores, semânticas e valores de anotação não diferenciam maiúsculas de minúsculas. Os nomes de anotação (não os valores) diferenciam maiúsculas de minúsculas. Os nomes de anotação são reconhecidos pelo sistema de efeitos D3DX e, portanto, os nomes de anotação SAS também são.
Tópicos relacionados