Condividi tramite


Elaborazione dei codici shader

Il driver di visualizzazione in modalità utente usa dichiarazioni di vertice e i token all'interno di ogni singolo pixel e codice del vertex shader, per programmare gli assembler shader.

Il driver di visualizzazione in modalità utente riceve rispettivamente il vertice e il codice pixel shader quando il runtime Microsoft Direct3D chiama rispettivamente le funzioni CreateVertexShaderShaderFunc e CreatePixelShader . Il driver di visualizzazione in modalità utente riceve dichiarazioni di vertice quando il runtime chiama la funzione CreateVertexShaderDecl del driver. Le dichiarazioni di vertice sono costituite da matrici di strutture D3DDDIVERTEXELEMENT . Il driver di visualizzazione in modalità utente converte il codice shader e le dichiarazioni vertex shader in un formato specifico dell'hardware e associa il codice e le dichiarazioni shader agli handle di shader e dichiarazione. Il runtime usa gli handle creati nelle chiamate alle funzioni SetVertexShaderDecl, SetVertexShaderFunc e SetPixelShader per impostare la dichiarazione vertex shader e i vertex e gli shader pixel in modo che tutte le operazioni di disegno successive li usino.

Per altre informazioni sul formato di un singolo codice shader e sui token che comprendono ogni codice shader, vedere Codici shader Direct3D.

Nota Quando un'applicazione crea vertex shader, pixel shader e dichiarazioni di vertice, il codice e la dichiarazione dello shader per ogni fine con un token finale. Quando il runtime Direct3D, a sua volta, passa le richieste di creazione del vertex e pixel shader al driver di visualizzazione in modalità utente, al vertice e al codice pixel shader che accompagna le richieste termina con i token finali. Tuttavia, quando il runtime passa le richieste di creazione della dichiarazione dei vertici, le dichiarazioni di vertice che accompagnano le richieste non terminano con i token finali.