RF5100 Lineær algebra Leksjon 10 Lars Sydnes, NITH 11. november 2013
I. LITT OM LYS OG FARGER
GRUNNLEGGENDE FORUTSETNINGER Vi ser objekter fordi de reflekterer lys. Lys kan betraktes som bølger / forstyrrelser i det elektromagnetiske feltet, Kan betraktes som en strøm av partikler kalt fotoner. Monokromatisk (Enfarget) lys er karakterisert av frekvens f. Måles gjerne i Hertz (Hz, (1/s), evt. terra-hertz THz). Finnes knapt i virkeligheten. Alternativ karakterisering av monokromatisk lys: Bølgelengde λ. Måles gjerne i meter (m, evt nanometer nm). Det lyset vi omgir oss med kan gjerne betraktes som en blanding av ulike typer monokromatisk lys.
BLANDING AV MONOKROMATISK LYS ENKEL MODELL Monokromatisk lys: Farge Frekvens Utslag Blå 650 Hz f b (t) = sin(650 t) Grønn 600 Hz f g (t) = sin(600 t) Rød 450 Hz f r (t) = sin(450 t) Sammensatt lys: f(t) =.50 sin(650 t) +.30 sin(600 t) +.20 sin(450 t) Monokromatisk lys = Legoklosser.
Tykk linje = sammensatt lys. FIGUR
FARGESYN På netthinnen har vi ulike typer reseptorer. Tre av disse typene sørger for fargesynet: Reseptorer for blått, grønt og rødt lys. Konsekvens: For å frembringe ønsket fargeinntrykk er det tilstrekkelig å stimulere reseptorene for blått, grønt og rødt lys på den rette måten. Når vi lager farger på en dataskjerm, gjør vi det ved å blande lys av tre ulike farger, gjerne rød, grønn og blå. I den sammenhengen er det rimelig å tenke på farger som sammensetningen av tre typer monokromatisk lys. Men: Det finnes farger som øyet kan oppfatte men som vi ikke kan frembringe på vanlige dataskjermer. 1 1 Se f.eks Lys Syn Farge"av Arne Valberg (Den finnes på salg på akademika.no), eller spør Sturla Bakke.
FARGEVEKTORER Farger representert ved tre kanaler: Rød, Grønn, Blå (RGB) Vektorrepresentasjon av farger: [0, 1, 2] [2, 9, 2] [4, 0, 1] [2, 0, 4] Addisjon av fargervektorer Blanding av farger. 2. [10, 0, 0] + [0, 5, 5] = [10, 5, 5] 2 Mrk: Additiv vs. subtraktiv fargeblanding
II. REFLEKSJONSFUNKSJONEN
MATEMATISK MODELL AV LYSREFLEKSJON Ulike punkter x i scenen vi ser på har ulike refleksjonsegenskaper. Lys med ulik bølgelengde λ reflekteres i ulik grad. Refleksjonen er ulik sett fra ulike retninger ˆn out. Refleksjonen avhenger av inngående lysstrålers retning ˆn in. I grove trekk: Utgående intensitet Inngående intensitet = f(x, ˆn in, ˆn out, λ). Vi kan kalle dette refleksjonsfunksjonen. I læreboka: BDRF BiDirectional Reflection Function BDRF: Kan modellere et enormt spektrum av materialegenskaper
SPESIFIKASJON AV BDRF I praksis: Må kunne beregne funksjonsverdier. Tidsbruk: Hvor lang tid tar det å regne ut funksjonsverdiene. Ressursbruk: Hvor mye data skal til for å spesifisere BDRF-en. Løsningen er: Vi konsentrerer oss om BDRF-er som er gitt av rimelig enkle formler. Vi spesifiserer BDRF-en med et lavt antall parametere. (1) Muliggjør effektiv bruk. (2) Man kan uttrykke et begrenset spektrum av materialegenskaper.
III. PHONG-REFLEKSJON: STANDARDMODELLEN FOR LYS-REFLEKSJON
PHONGS REFLEKSJONSMODELL [Wikipedia] Tre komponenter. Hver komponent har sin egen matematiske formulering. Resultatet kombineres: Summering av fargevektorer for hvert enkelt punkt.
LYS FRA OMGIVELSENE STRÅLING (AMBIENT) Global belysning uten retning og posisjon: g amb (Fargevektor). Materialets ambient-farge: m amb (Fargevektor). Resultat: Opplevd farge: c amb = m amb g amb, der står for komponentvis multiplikasjon. Utstråling (dersom objektet vi ser på er en lyskilde): c emis. (En materialegenskap).
DEN DIFFUSE KOMPONENTEN En overflate som ikke er helt jevn vil spre lys i alle retninger. Intensiteten avhenger av vinkelen mellom flaten og innkommende lys. θ ˆn ˆl Høy intensitet Lav intensitet c diff = (s diff m diff ) max(ˆn ˆl, 0). Her er ˆn = Flatenormal ˆl = Retning mot lyskilde. Mrk: ˆn ˆl = cos θ.
DEN SPEILENDE KOMPONENTEN SPECULAR COMPONENT Perfekt refleksjon: Innfallsvinkel = refleksjonsvinkel. Nesten perfekt refleksjon: Det reflekterte lyset spres litt utover. Smal spotlight vs Perfekt lysstråle. ˆr ˆv ˆn ˆl
DEN SPEILENDE KOMPONENTEN ˆr ˆv ˆn ˆl c spec = (s spec m spec ) max(v r, 0) m gls. s spec karakteriserer lyskilden. m spec karakteriserer materialet. m gls karakteriserer materialet: Phong-eksponent, glossiness. Liten m gls gir mykere overgang. Ekstremtilfelle: m gls = 0. Stor m gls gir hardere overgang, mer perfekt refleksjon. ˆv angir retning til kamera. ˆl angir retning mot lyskilde. ˆr angir refleksjonsvinkel.
OM PHONG-EKSPONENTEN
OVERSIKT Phongs refleksjonsmodell er bare én av mange mulige løsninger. Alternativer: Mer realistisk grafikk Ulike typer optimalisering Andre materialegenskaper. Phongs modell er en del av grunnfjellet i 3D-grafikk. Phongs modell er en dramatisk forenkling av hvordan refleksjon av lys foregår i virkeligheten. [Wikipedia]
HVA VI IKKE HAR SNAKKET OM Blinn-refleksjon: En liten justering av Phong-refleksjonen. (Se side 403 i læreboka) Flatenormaler er ekstremt viktig. Hvordan bestemmer vi dem? Flater representeres gjerne ved trianguleringer. For en trekant ABC i en triangulering har vi en flatenormal i AB AC.
HVA VI IKKE HAR SNAKKET OM Falske normaler (interpolasjon / Phong-shading): [Wikipedia] Dette åpner for en uendelighet av muligheter: Angi falske flatenormaler ved hjelp av texture maps Angi andre typer forskyvninger.
If you have read the OpenGL [...] documentation for setting material parameters, you are forgiven for thinking that ambient, diffuse and specular are how light works [...] (Dunn & Parberry p. 409)