Utilizzo degli shader
È possibile utilizzare la finestra di Progettazione shader basata sul grafico in Visual Studio per progettare effetti shader personalizzati.È possibile utilizzare i modelli nel proprio gioco o nella propria app basata su DirectX.
Shader
Uno shader è un programma per computer che esegue calcoli grafici (ad esempio le trasformazioni di vertice o la colorazione dei pixel) e in genere viene eseguito su un'unità di elaborazione grafica (GPU) anziché su una CPU.Poiché la maggior parte delle pipeline grafiche a funzioni fisse vengono ora eseguite dai programmi dello shader, è possibile utilizzarle per creare una pipeline specifica delle esigenze dell'applicazione.
I tipi più comuni di shader sono i vertex shader, che eseguono calcoli per vertice e sostituiscono i circuiti di trasformazione e di illuminazione a funzioni fisse in hardware per grafica non programmabile, e i pixel shader, che eseguono calcoli per pixel che determinano il colore di un pixel e sostituiscono i circuiti di combinazione dei colori a funzioni fisse in hardware per grafica non programmabile.L'hardware grafico moderno ha creato ancora più tipi di shader: hull shader, domain shader e geometry shader per i calcoli di grafica e compute shader per i calcoli di non grafica.Nessuna di queste fasi è disponibile nell'hardware grafico non programmabile.Gli shader sono stati originariamente creati tramite un linguaggio di tipo di assembly che ha immesso le istruzioni dati in parallelo (SIMD) e incentrate su grafici (il prodotto scalare).Ora, gli shader in genere vengono creati utilizzando i linguaggi di alto livello o di tipo C come HLSL (High Level Shader Language).
È possibile utilizzare la finestra di progettazione di shader per creare i pixel shader in modo interattivo anziché immissione e di compilazione del codice.Nella finestra Progettazione shader uno shader è definito da una serie di nodi che rappresentano i dati e le operazioni e da connessioni tra i nodi che rappresentano il flusso dei valori di dati e risultati intermedi tramite lo shader.Utilizzando questo approccio e l'anteprima in tempo reale nella finestra di Progettazione shader, è possibile visualizzare l'esecuzione dello shader più facilmente e "scoprire" le variazioni interessanti di shader tramite la sperimentazione.
DGSL, documenti
La finestra di Progettazione shader salva gli shader in formato DGSL (Directed Graph Shader Language), che è un formato XML basato sul linguaggio DGML (Directed Graph Markup Language).È possibile applicare shader DGSL direttamente ai modelli 3D nell'editor modello.Prima di poter utilizzare una shader DGSL nell'applicazione, è tuttavia necessario esportarlo in un formato noto a DirectX (ad esempio HLSL).
Poiché DGSL è compatibile con DGML, è possibile utilizzare gli strumenti progettati per analizzare i documenti DGML per analizzare gli shader DGSL.Per informazioni su DGML, vedere la pagina relativa alla Conoscenza di DGML (Directed Graph Markup Language).
Argomenti correlati
Titolo |
Descrizione |
---|---|
Viene descritto come utilizzare la finestra di Progettazione shader di Visual Studio per l'utilizzo degli shader. |
|
Vengono descritti i tipi di nodi della finestra di Progettazione shader che è possibile utilizzare per realizzare effetti grafici. |
|
Vengono forniti collegamenti ad argomenti che illustrano come utilizzare la finestra di progettazione di shader per realizzare effetti comuni di grafica. |