Bearbeta skuggningskoder

Visningsdrivrutinen i användarläge använder vertexdeklarationer och tokens inom varje enskild pixel- och vertexshaderkod för att programmera shader-sammanställare.

Visningsdrivrutinen för användarläge tar emot hörn- och pixelskuggningskod när Microsoft Direct3D-körningen anropar drivrutinens funktioner CreateVertexShaderFunc respektive CreatePixelShader . Visningsdrivrutinen i användarläge tar emot vertexdeklarationer när programkörningen anropar drivrutinens CreateVertexShaderDecl-funktion. Vertexdeklarationerna består av matriser med D3DDDIVERTEXELEMENT-strukturer. Visningsdrivrutinen i användarläge konverterar skuggningskod och hörnskuggningsdeklarationer till ett maskinvaruspecifikt format och associerar skuggningskoden och deklarationerna med skuggnings- och deklarationshandtag. Körningen använder de skapade handtagen i anrop till funktionerna SetVertexShaderDecl, SetVertexShaderFunc och SetPixelShader för att ange hörnskuggningsdeklarationen och hörn- och pixelskuggarna så att alla efterföljande ritningsåtgärder använder dem.

Mer information om formatet för en enskild skuggningskod och de token som utgör varje skuggningskod finns i Direct3D Shader Codes( Direct3D Shader Codes).

Observera När en applikation skapar vertexshader, pixelshader och vertexdeklarationer slutar shaderkoden och deklarationen för var och en med en sluttagg. När Direct3D-körningen i sin tur vidarebefordrar begäranden om skapande av vertex- och pixelshader till visningsdrivrutinen i användarläge, slutar vertex- och pixelshaderkod som medföljer begärandena med sluttoken. Men när körningen skickar begäranden om skapande av vertexdeklarationer, avslutas de vertexdeklarationer som medföljer begärandena inte med sluttoken.