Vad är per-pixel belysning?
"Per-pixel-belysning" är en term som används i datorgrafik för att indikera att en tredimensionell (3D) scen kommer att bestämma färgen på objekt på en pixel-för-pixel-bas istället för en vertex-för-vertex-basis. Användningen av per-pixel-belysning istället för per-vertex-belysning skapar vanligtvis en färdig bild eller ram som har ett mer realistiskt och ofta skarpare, mer definierat utseende, särskilt när man använder kartläggning av bulter. I allmänhet implementeras per-pixelbelysning genom användning av pixel-skuggare som kan använda ett antal sätt att beräkna hur ljuset i en scen träffar ett visst område av scenen och vilken färg den resulterande ytan ska vara. I 3D-applikationer där återgivningshastigheten är viktig, till exempel en dynamisk animering, kan skuggning per pixel kanske inte vara praktisk eftersom den kan kräva flera passeringar genom en scen eller helt enkelt ta för lång tid och göra en acceptabel framerat omöjlig att uppnå.
En av de vanligaste formerna för att applicera ljus på en 3D-scen är att använda en metod som kallas per-vertexbelysning. Den här tekniken tar korset på ett objekt - punkterna där linjerna för ett objekt möts - och bestämmer hur ytan på ett objekt ska se ut på den enda platsen. När alla vertikaler i en scen har belysningsinformation bifogad kommer renderaren att använda interpolering eller andra typer av algoritmer för att uppskatta utseendet på ytan på objektet mellan topparna. Detta resulterar i allmänhet i områden som är beroende av en hög täthet av toppar i ett objekt för att uppnå skarpa belysningseffekter, såsom en phong-höjdpunkt, medan en form som en kub med endast sex toppar har bred, graderad belysning över ytorna, oavsett struktur eller belysningsposition.
Däremot kan ett program implementera per-pixel-belysning. Detta innebär att passera genom var och en av pixlarna i en rasteriserad scen och bestämma den individuella färgen och belysningen för varje pixel, oavsett närhet till ett toppunkt. Resultaten är vanligtvis skarp, exakt belysning, särskilt med speciella effekter. Avvägningen för bättre bildkvalitet är en längre renderingstid, eftersom varje pixel måste bearbetas av en pixel-skuggare, även om detta inte alltid är ett problem med 3D-modellering och grafik- och renderingsprogram som inte behöver upprätthålla en viss framerate.
De dramatiska effekterna av per-pixelbelysning när de appliceras korrekt kan faktiskt förbättra utseendet på ett objekt som har komplicerad bulkkartläggning tillämpad och minutdetaljerna kan gå förlorade med per-vertexbelysning. Procedurstrukturer kan också dra nytta av en belysningssätt per pixel. Dessutom kräver specialeffekter, som skuggvolymer, användning av per-pixel-belysning, liksom komplexa belysningsreflektioner, partikelsystem eller till och med glorier i vissa fall.