Phong-varjostus

Phong-varjostus on kolmiulotteisessa grafiikassa käytetty varjostusmenetelmä, jossa polygonin valaistus lasketaan sen normaalien perusteella.

Phong-menetelmä on raskaampi laskea kuin tasainen varjostus ja Gouraud-varjostus mutta tarkempi etenkin melko suuripolygonisissa "kiiltävissä" kappaleissa. Phong-varjostuksessa pinnan sisäpisteiden valaistus lasketaan erikseen, kun taas Gouraud-varjostuksessa valaistuskaava lasketaan vain kulmapisteille ja keskiosan värit interpoloidaan kulmapisteiden valaistuksesta.

Phong-varjostuksen esitti Bui Tuong Phong väitöstyössään vuonna 1973 ja vuonna 1975 artikkelissa Illumination for computer generated pictures. Bui Tuong Phong sairasti leukemiaa ja kuoli pian väitöksen valmistuttua.

Phong-menetelmästä on julkaistu vuonna 1977 James F. Blinnin esittämä niin sanottu Blinn-Phong -malli. Blinn kehitti menetelmää sallimalla interpolaatiota ja vähentämällä laskentakuormaa.

Phongin heijastusmalli
580px|thumb|Phongin heijastusmallin kolme komponenttia.
Phong-varjostus perustuu Phongin heijastusmalliin (eli Phongin valaistusmalliin). Siinä valonlähteestä tulevan valon heijastuminen kappaleesta jaetaan spekulaariin heijastukseen (peilimäinen heijastus, peiliheijastus), joka kohdistuu vahvimpana suoraan katsojaan, diffuusiin heijastukseen (hajavalon heijastus, hajaheijastus), joka kohdistuu yhtä vahvana kaikkiin suuntiin, ja ambienttiin heijastukseen (yleisvalon heijastus, taustavalon heijastus), joka simuloi ympäröivistä kappaleista tulevaa valoa. Heijastuva valo lasketaan spekulaaria, diffuusia ja ambienttia komponenttia vastaavista muuttujista (jotka kuvaavat karkeasti kappaleen heijastusominaisuuksia) ja valonlähteen, kappaleen pinnan ja katsojan välisistä kulmista.

Phongin heijastusmalli on paikallinen valaistusmallihttp://www.cs.helsinki.fi/group/goa/render/valaistus.html, eli se ei ota huomioon ympäröivistä kappaleista heijastuvaa valoa (muuta kuin karkeana, jokaisessa kohdassa samansuuruisena ambient-kertoimena), mutta valonlähteitä voi olla useampia. Phongin heijastusmalli ei perustu niinkään valon fysikaalisiin ominaisuuksiin vaan on kokemuspohjainen.

Lähteet

Luokka:Grafiikka-algoritmit