Estágio de sombreador de domínio (DS)
O estágio DS (Sombreador de Domínio) calcula a posição do vértice de um ponto subdividido no patch de saída; Ele calcula a posição do vértice que corresponde a cada amostra de domínio. Um sombreador de domínio é executado uma vez por ponto de saída do estágio do mosaico e tem acesso somente leitura ao patch de saída do sombreador do casco e às constantes do patch de saída do sombreador e às coordenadas UV de saída do estágio do mosaico.
Finalidade e usos
O estágio Domain Shader (DS) gera a posição do vértice de um ponto subdividido no patch de saída, com base na entrada do estágio Hull Shader (HS) e do estágio Tessellator (TS).
Entrada
- Um sombreador de domínio consome pontos de controle de saída do estágio HS (Sombreador de Casco). As saídas do sombreador de casco incluem:
- Pontos de controle.
- Corrigir dados constantes.
- Fatores de mosaico. Os fatores de mosaico podem incluir os valores usados pelo mosaico de função fixa, bem como os valores brutos (antes do arredondamento por mosaico inteiro, por exemplo), o que facilita a geomorfoseação, por exemplo.
- Um sombreador de domínio é invocado uma vez por coordenada de saída do estágio TS (Tessellator).
Saída
- O estágio DS (Sombreador de Domínio) gera a posição do vértice de um ponto subdividido no patch de saída.
Após a conclusão do sombreador de domínio, o mosaico é concluído e os dados do pipeline continuam para o próximo estágio do pipeline, como o estágio GS (Sombreador de Geometria) e o estágio PS (Sombreador de Pixel). Um sombreador de geometria que espera primitivos com adjacência (por exemplo, 6 vértices por triângulo) não é válido quando a suavização de serrilhado está ativa (isso resulta em comportamento indefinido, do qual a camada de depuração reclamará).
Exemplo
void main( out MyDSOutput result,
float2 myInputUV : SV_DomainPoint,
MyDSInput DSInputs,
OutputPatch<MyOutPoint, 12> ControlPts,
MyTessFactors tessFactors)
{
...
result.Position = EvaluateSurfaceUV(ControlPoints, myInputUV);
}
Tópicos relacionados
Pipeline de elementos gráficos