Radiosity introduksjon

Radiosity introduksjon

Thu 16 October 2008

- Radiosity

- Global Illumination

Radiosity er for mange en ukjent og kanskje undervurdert måte å rendre bilder på. Vi vil her prøve å gi litt informasjon om hva radiosity er og hvilken muligheter det kan gi deg.

Radiosity er en teknikk som gir inndirekte belysning. Det vil si at lys reflekterer fra andre overflater alt etter hvilken reflektive egenskaper overflaten har. Uten denne refleksjonen vil bildene bli livløse og lite troverdige. Du vil da kun ha lyset som strømmer direkte fra lyskilden til objekt, altså ingen objekt -> objekt belysning.

Som du kan se av bildene under vil lyset ikke nå inn i områder som ikke er direkte synlige fra lyskilden uten at en bruker inndirekte belysning (Global Illumination, GI). Radiosity er en måte å få lyset inn i ellers mørklagte områder på. I virkeligheten er inndirekte belysning endel av det vi ser rundt oss.

radiosity_gi_off radiosity_gi_on

Daylight system, GI, inndirekte lys er av. Daylight system, GI, inndirekte lys er på.

Radiosity fungerer på en måte som konseptuelt er forskjellig fra vanlig Scanline. Hvor man er vant til å tenke lyskilde og objekt vil vi nå tenke på at alt kan være en potensiell lyskilde. Dette p.g.a at alle objekter nå kan tenkes å reflektere en viss andel lys til hverandre.

- Det er ingen forskjell på en lyskilde og et objekt.

- En overflate 'A' blir belyst av alle andre overflater som er synlige fra denne.

- Scanline gir deg ikke GI, inndirekte lys. Derfor bruker vi Radiosity som et supplement til Scanline for å få GI i scenen vår.

radiosity_scanlineonly

Scanline, fotometrisk, kamera render

- Radiosity deler opp geometrien vår.

radiosity_sub_noradiosity radiosity_sub_radiosity

Uten radiosity, viewport Med radiosity, viewport

- Radiosity baker lysinformasjon rett i scenen. Dette gjør at scenen er uavhengig av av kameravinkel.

radiosity_wp_noradiosity radiosity_wp_radiosity

Uten radiosity, viewport Med radiosity, viewport

1: Gå til render setup (F10).

2: Advanced Lightning tab. Velg "Radiosity".

3: Trykk start og vent. Dersom du har mange objekter og/ eller mange polygoner i scenen din vil dette ta litt tid.

  • For de aller fleste tilfeller kan du sette "Initial quality" til 50% for produksjon, og 30% for testing. Default er 85%.
  • Under "Interactive tools", sjekk at "Display radiosity in viewport" er skrudd på.

radiosity_1

4: Vi ser nå resultatet av "radiosity" i viewport. Det første vi legger merke til er at sofaen har fått hvite flekker.

5: Under "process" velger vi "Refine iterations" og setter denne til f.eks 10 (default:0), og trykk continue for å ytterlige kalkulere radiosity.

radiosity_2

6: Vi ser nå at en del av støyen vi hadde på sofaen er borte. Men det er enda litt synlig støy tilstede.

7: Vi vil nå prøve å filtrere vekk resten av støyen ved å filtrere lyset. Dette vil jevne ut lysdistribusjonen.

8: Under "Interactive tools" sett "Indirect light filtering" til f.eks 10 (default:0), og trykk continue for å kalkulere.

radiosity_3 radiosity_3_wireframe

Radiosity without global subdivision Radiosity without global subdivision, wireframe

9: Nå er vi kvitt den synlige støyen. Men som den observante kanskje ser er ikke meshen delt opp sånn som tidligere vist.

10: Under "Radiosity meshing parameters" sett "Global subdivision settings" til "Use adaptive subdivision".

11: Under "Radiosity processing parameters" trykk "Reset all" for å nullstille radiosity og "Start" for å kalkulere på ny. Den vil nå dele opp geometrien, samt at den husker alle andre innstillinger som vi har gjort "Refine Iterations" og "Light filtering".

radiosity_4 radiosity_4_wireframe

Radiosity with global subdivision Radiosity with global subdivision, wireframe

Det var en rask gjenomgang av Radiosity og de innstillinger som du trenger for å komme igang med det.

Avslutningsvis kan det nevnes at Radiosity ikke er et reelt valg for mange. Dette fordi at rendermotorer som Brazil, Maxwell, Fryrender, V-Ray og Mentalray er raskere, mer moderne og har ikke de begrensingene som Scanline / Radiosity har. Er du 3dsmax bruker har du allerede Mentalray i tillegg til Scanline/Radiosity og de fleste vil foretrekke å sette seg inn i denne istedenfor.

Men for noen kan Radiosity være en grei måte å bake lys inn i en scene for å gjøre raske previews, shoebox, walkthroughs, stillbilder fra flere vinkler med mer. Radiosity har og en lavere læringskurve i forhold til en del andre GI kapable rendermotorer.

Fordeler Ulemper
- Uavhengig av kameravinkel - Krever mye minne for å dele opp geometri
- Color bleeding - Utdatert
- Iterativ - Tar ikke refleksjoner og 'caustics'
- Lett å sette opp - Dårlig dekket i bøker og opplæringsmateriell
- Inkludert i 3ds max - Treg kalkulering
- En kalkulering for alle kameravinkler - Må kalkuleres på ny om objekter i scenen flyttes

radiosoty_4_shoebox_1 radiosoty_5_shoebox_2