Tutorial for en DirectX Pixel Shader

Microsofts DirectX er et nyttig verktøy for operativsystemet som brukes av mange dataspill for å vise avansert grafikk. Oppdateringer av programvaren har gitt ekstra funksjoner, inkludert pixel shader - nyttig for å lage skygger eller celle-shading grafikk. Denne prosessen kan bare brukes til små grupper av piksler, typisk teksturer. Så vurdere å bruke vektor nyanser hvis du trenger å endre skygge kvaliteter mange piksler. For å fullføre denne prosessen, må du ha lang erfaring med programmeringsspråket C.

Bruksanvisning

1 Erklærer DirectX pixel shader i programmet:

PixelShader = kompilere ps_1_1 OurFirstPixelShader ();

Dette vil tillate deg å bruke programmets pixel shader innenfor ditt eget program. Imidlertid vil bare datamaskiner med DirectX installert på sine datamaskiner kunne kjøre programmet.

2 Skriv inn grunnleggende mal som må tastes inn ved begynnelsen av en kode som brukes sammen med pixel shader, rett under objektet du vil endre bildepunktene på:

struct PSInput
{

float4 Pos : SV_Position;
float3 Normal : NORMAL;
float2 Texcoord : TEXCOORD0;
float4 WorldPos : POSITION;

};

float4 PixelShader (PSInput I): SV_Target
{

For eksempel, hvis du ønsker å endre pikslene i en tekstur, dette ville bli plassert etter den vises i koden.

3 Skriv inn kommandoer av handlingen du vil utføre på pixel. For eksempel:

float4 Color = g_Tex.Sample (g_Sampler, In.Texcoord);

float3 vRay = (float3)(g_LightPos - In.WorldPos);

flyte FDOT = max (0.0f, prikk (normal (Vray), normal (In.Normal)));

tilbake Color * FDOT;

}

Dette eksempelet gjør Tex.Sample tekstur lysere enn det normalt er. For å fullføre dette trinnet, må du ha en full kjennskap til C kommandoer.

4 Lagre filen for å beholde endringene.