Uploaded by Bojana Tekic

699page

advertisement
14.7 Level of Detail
Osnovna ideja nivoa detalja (LOD) je korištenje jednostavnijih verzija objekta jer daje sve manji
doprinos prikazanoj slici. Na primjer, razmislite o detaljnom automobilu koji se može sastojati od
milion trouglova. Ova reprezentacija se može koristiti kada je gledalac blizu automobila. Kad je
objekt udaljeniji, recimo pokrivajući samo 200 piksela, ne treba nam svih milion trouglova. Umjesto
toga, možemo koristiti pojednostavljeni model koji ima samo, recimo, 1000 trouglova. Zbog
udaljenosti, pojednostavljena verzija izgleda otprilike isto kao i detaljnija verzija. Na ovaj način se
može očekivati značajno povećanje performansi. Magla(Fog), opisana u odjeljku 10.15, često se
koristi zajedno s LODs. To nam omogućuje da potpuno preskočimo iscrtavanje objekta prilikom
ulaska u neprozirnu maglu. Također, mehanizam zamagljivanja može se koristiti za implementaciju
vremenski kritičnih iscrtavanja (vidi odjeljak 14.7.3). Pomicanjem udaljene ravni bliže gledaocu,
objekti se mogu ranije odbaciti, a može se postići i brže iscrtavanje(renderovanje) kako bi se učitao
kadar (da bi se zadrzala brzina kadrova).
Neki objekti, poput sfera, Bezijeovih površina i površina podjele, imaju nivo detalja (LOD) kao dio
svog geometrijskog opisa. Osnovna geometrija je zakrivljena, a zasebna LOD kontrola određuje kako
se teselira(kao mozaik) u poligone koji se mogu prikazati. U ovom odjeljku opisujemo neke
uobičajene metode za korištenje takvih LOD -ova. Za algoritme pogledajte odjeljak 13.6.4 koji
prilagodjavaju kvalitet teselacija za parametarske površine i površine podjele.
Uopsteno, LOD algoritmi se sastoje od tri glavna dijela, naime, generisanja (generation), odabira
(selection) i prebacivanja (switching).LOD generisanje je dio gdje razlicite reprezentacije modela se
generisu sa razlicitim detaljima. Metode pojednostavljenja opisane u odjeljku 12.5 mogu se koristiti
za generisanje željenog broja LOD -ova.Drugi pristup je pravljenje modela sa razlicitim brojem
trouglova rucno. Mehanizam odabira bira nivo detalja na osnovu nekih kriterija, poput procijenjene
površine na ekranu.Konacno, moramo da predjemo sa jednog nivoa detalja na drugi, i ovaj proces e
naziva LOD switching (LOD prebacivanje).U ovom odeljku su predstavljeni razliciti mehanizmi
prebacivanja i odabira.
Iako je fokus u ovom odjeljku na izboru između različitih geometrijskih prikaza, ideje iza LOD -ova
mogu se primijeniti i na druge aspekte modela, pa čak i na korištenu metodu iscrtavanja.Modeli
nizeg nivoa detalja takodje mogu da koriste teksture i senke nizeg kvaliteta, cime se dodatno stedi
memorija i vreme racunanja [164]. Same senke se mogu pojednostaviti u zavisnosti od udaljenosti,
važnosti ili drugih faktora [959, 996].Kajiya (Kadzija) predstavlja hijerarhiju razmera pokazujuci kako
se modeli povrsinskog osvetljenja preklapaju sa metodama preslikavanja teksture, koje se zauzvrat
preklapaju sa geometrijskim detaljima.Druga tehnika je ta da se manje kosti mogu koristiti za
operacije skidanja koze sa objekata na daljinu.
Kada su statički objekti relativno udaljeni, varalice (odjeljak 10.7.1) su prirodan način da ih
predstavite po maloj cijeni [806]. Druge metode iscrtavanja površine, poput mapiranja izbočina ili
reljefa, mogu se koristiti za pojednostavljivanje prikaza modela. Slika 14.21 daje primjer.Teixeira
(Tejšera) [1257] raspravlja o tome kako peći normalne karte na površine pomoću GPU -a. Najuočljiviji
nedostatak ove tehnike pojednostavljenja je to što siluete gube zakrivljenost.Loviscach (Loviskah)
predstavlja metodu ekstrudiranja (istiskivanja) peraja duz ivica siluete za stvaranje zakrivljenih
silueta.
Primjer raspona tehnika koje se mogu koristiti za predstavljanje objekta je iz Lengyel(Lenjiel-selo u
Madjarskoj) et al[764, 765]. U ovom istrazivanju, krzno je predstavljeno geometrijom kada je vrlo
blizu, alfa pomijesanim linijama kada je udaljenije, zatim mjesavinom sa „ljuskama“ volumetrijske
teksture, koja konacno postaje mapa teksture kada je daleko.
Figure 14.21. Sa leve strane, originalan model se sastoji od 1.5 miliona trouglova.Na desno, model ima 1100 trouglova, sa povrsinskim
detaljima sacuvanim kao teksture polja visine i iscrtanim pomocu preslikavanja reljefa. (Image courtesy of Natalya Tatarchuk, ATI
Research, Inc.)
Figure 14.22. Iz daljine, zecje krzno je iscrtano volumetrijskim teksturama.Kada se zeka priblizi, kosa se iscrta alfa-pomijesanim
polilinijama.Kad se priblizi, krzno duz siluete je iscrtano graftalnim perajama. (Image courtesy of Jed Lengyel and Michael Cohen,
Microsoft Research.)
Pogledajte sliku 14.22.Znati kada i kako je najbolje preci sa jednog seta tehnika modeliranja i
iscrtavanja na drugi kako se povecala brzina i kvalitet kadrova je jos uvijek umetnost i otvoreno
podrucje za istrazivanje.
14.7.1 LOD Switching
Prilikom prelaska sa jednog LOD-a na drugi, nagla zamjena modela cesto je primjetna i ometa.Ova
razlika se naziva iskakanje (popping).Ovde ce biti opisano nekoliko razlicitih nacina izvodjenja ove
promene (prebacivanja, switching), a svi oni imaju razlicite osobine iskakanja.
Discrete Geometry LODs- LOD -s za diskretnu geometriju
U najjednostavnijem tipu LOD algoritma, različite reprezentacije su modeli istog objekta koji sadrže
različit broj primitiva.Ovaj algoritam je veoma pogodan za savremeni graficki hardver [801], jer se te
zasebne staticke mreze mogu skladistiti u memoriji GPU-a i ponovo koristiti (videti Odeljak 18.3.4 i
Odeljak 12.4.5).Detaljniji LOD ima veci broj primitiva.Primer 3 LOD-a nekog objekta je prikazan na
slici 14.23.Ova slika takodje prikazuje razlicite LOD-ove na razlicitim udaljenostima od posmatraca.
Figure 14.23. Ovde, prikazujemo 3 razlicita nivoa detalja za modele eksploziva C4 i lovca.Elementi su pojednostavljeni ili potpuno
uklonjeni na nizim nivoima detalja.Slike sa malim umetcima prikazuju pojednostavljene modele u relativnim velicinama koje bi mogle
da se koriste. (Upper row of images courtesy of Crytek; lower row courtesy of Valve Corp.)
Prebacivanje (switching) sa jednog LOD-a na drugi se desava , tj. na trenutnom okviru se koristi
odredjeni LOD.Zatim, na sledecem okviru mehanizam odabira (selection) bira drugi LOD i odmah ga
koristi za iscrtavanje.Popping (iskakanje) je tipicno najgori za ovu vrstu LOD metoda.Bolje alternative
su opisane u nastavku.
Blend LODs
Konceptualno, ocigledan nacin prelaska (switch) je lineralna mesavina izmedju 2 LOD-a u kratkom
vremenskom periodu.To ce svakako omoguciti glatkije prebacivanje.Renderovanje 2 LOD-a za jedan
objekat je prirodno skuplje od samog renderovanja jednog LOD-a, tako da ovo donekle ponistava
svrhu LOD-ova.Medjutim, LOD switching (prebacivanje) obicno se odvija samo u kratkom
vremenskom periodu, a cesto ne i za sve objekte u sceni istovremeno pa poboljsanje kvaliteta moze
itekako da vredi troskova.
Pretpostavimo da je prelaz izmedju 2 LOD-a- recimo LOD1 i LOD2- pozeljan i da je LOD1 trenutni LOD
koji se prikazuje.Problem je u tome kako prikazati i spojiti oba LOD-a na razuman nacin.Postavljanje
poluprozirna oba LOD-a rezultirace poluprozirnim (mada nesto neprozirnijim) objektom koji se
prikazuje na ekranu.Pisanje zasebnih ciljeva van ekrana i njihovo mesanje je skupo i ima svojih
problema.
Gigl i Vimer [394] predlazu metodu mijesanja koja dobro funkcionise u praksi i jednostavno se
implementira.Prvo povucite LOD1 neprozirno u bafer okvira (frame buffer) (both color and Z).Zatim
izbledite u LOD2 povecavajuci njegovu alfa vrednost sa 0 na 1 i koristeci „over“ mod mijesanja,
opisan u Odeljku 5.7.Kada je LOD2 izbledeo tako da je potpuno neproziran, pretvara se u trenutni
LOD, a zatim se LOD1 izbledi (postepeno se gubi).LOD koji se bledi (ulaz ili izlaz) treba da se prikaze
sa omogucenim z-testom i onemogucenim z-pisanjem.Da biste izbegli udaljene objekte koji se kasnije
iscrtavaju povlacenjem rezultata rederovanja izbledelog LOD-a, jednostavno nacrtajte sve izbledele
LOD-ove sortiranim redosledom posle svih neprozirnih sadrzaja, kao sto se to obicno radi za prozirne
objekte.Imajte na umu da se usred tranzicije iscrtavaju oba LOD-a neprozirno, jedan preko
drugog.Ova tehnika najbolje funkcionise ako su prelazni intervali kratki, sto takodje pomaze u
smanjenju troskova renderovanja.Mittring [887] raspravlja o slicnoj metodi, s tim sto se prozirnost
ekrana (potencijalno na nivou podpiksela) koristi za rastvaranje izmedju verzija.
Alpha LODs
Jednostavan metod koji potpuno izbegava iskakanje (popping) je koriscenje onoga sto nazivamo
alpha LODs.Ova tehnika se moze koristiti sama ili se moze kombinovati sa drugim LOD switching
tehnikama.Koristi se na originalnom modelu ili najjednostavnije uocljivom LOD-u.Kako se metrika
koja se koristi za odabir LOD-a (LOD selection) (npr. Udaljenost do ovog objekta) povecava, ukupna
transparentnost objekta se povecava (alfa se smanjuje), a objekt konacno nestaje kada dostigne
potpunu transparentnost (alfa = 0.0).
Figure 14.24. Konus u sredini se iscrtava pomocu alpha LOD-a.Transparentnost konusa se povecava kada se rastojanje do njega
povecava i konacno nestaje.Slike sa leve strane prikazuju se sa iste udaljenosti radi pregleda, dok su slike desno od linije prikazane u
razlicitim velicinama.
To se desava kada je metricka vrednost veca od korisnicki definisanog praga nevidljivosti.Postoji i
drugi prag koji odredjuje kada ce objekat poceti da postaje transparentan.Postoji i drugi prag koji
odredjuje kada ce objekat poceti da postaje transparentan.Kada se dostigne prag nevidljivosti,
objekat uopste ne mora da se salje kroz pajplajn za prikazivanje sve dok vrednost metrike ostaje
iznad praga.Kada je objekat nevidljiv i njegova metrika pada ispod praga nevidljivosti, to smanjuje
njegovu transparentnost i ponovo pocinje da bude vidljiv.
Prednost koriscenja ove tehnike kao samostalne je u tome sto se dozivljava kao mnogo
kontinuiranija od LOD metode diskretne geometrije, pa se tako izbegava iskakanje
(popping).Takodje, buduci da objekat konacno potpuno nestaje i ne treba ga iscrtavati (rederovati),
moze se ocekivati znacajno ubrzanje.Nedostatak je sto objekat potpuno nestaje i tek tada se postize
povecanje performansi.Slika 14.24 prikazuje primjer alfa LOD-va.
Jedan problem pri koriscenju alfa transparentnosti je to sto je potrebno uciniti sortiranje po dubini
kako bi se osiguralo da se transparentnost pravilno mesa.Da bi se izbledela udaljena vegetacija, Votli
[1350] raspravlja o tome kako se sum teksture moze koristiti za prozirnost (transparentnost)
ekrana.Ovo ima efekat rastvaranja, pri cemu vise teksela na objektu nestaje sa povecanjem
udaljenosti.Iako kvalitet nije tako dobar kao pravi alfa fade, prozirnost ekrana znaci da sortiranje nije
potrebno.
CLODs and Geomorph LODs
Proces pojednostavljivanja mreze moze se koristiti za kreiranje razlicitih LOD modela iz jednog
slozenog objekta.Algoritmi za izvodjenje ovog pojednostavljenja razmatrani su u Odeljku
12.5.1.Jedan pristup je kreiranje skupa diskretnih LOD-ova i njihovo koriscenje kao sto je ranije
objasnjeno.Medjutim, metode urusavanja ivica imaju zanimljivo svojstvo koje dozvoljava druge
nacine prelaska izmedju LOD-ova.
Model ima 2 manja poligona nakon svake operacije sazimanja ivica.Ono sto se desava pri urusavanju
ivice je da se ivica smanji sve dok 2 njegove krajnje tacke se ne sastanu i nestaje.Ako se ovaj proces
animira, dolazi do glatkog prelaska izmedju originalnog modela i njegove malo pojednostavljene
verzije.Za svako urusavanje ivica, jedan vrh je spojen sa drugim.Tokom niza urusavanja ivice, skup
vrhova se pomera kako bi se udruzio sa ostalim temenima.Cuvanjem niza urusavanja ivice, ovaj
proces se moze preokrenuti, tako da se pojednostavljeni model vremenom moze uciniti
slozenijim.Preokret urusavanja ivice naziva se rascep vrhova (vertex split).Dakle, jedan od nacina za
promenu nivoa detalja objekta je precizno zasnivanje broja poligona vidljivih na vrednosti odabira
LOD-a.Na 100 metara udaljenosti, model bi se mogao sastojati od 1000 poligona, a pomerajuci se na
101 metar, mogao bi pasti na 998 poligona.Takva sema se naziva tehnika kontinualnog nivoa detalja
(CLOD).Ne postoji dakle, diskretan skup modela, vec ogroman skup modela dostupnih za prikaz,
svaki sa 2 poligona manje od svog slozenijeg susjeda.Iako je privlacno, koriscenje takve seme u praksi
ima neke nedostatke.Ne izgledaju svi modeli u CLOD dobro.Poligonalne mreze, koje se mogu iscrtati
(renderovati), mnogo brze od pojedinacnih trouglova, teze se koriste sa CLOD tehnikama nego sa
statickim modelima.Ako u sceni postoji veliki broj istih objekata, svaki CLOD objekat mora navesti
svoj specifican skup trouglova, buduci da se ne podudara ni sa jednim drugim.Blum [113] i Forsajt
[351] raspravljaju o rjesenjima ovih i drugih problema.
U podeljenom vrhu (vertex split), jedan vrh daje dva.To znaci da svaki vrh na slozenom modelu dolazi
iz nekog vrha na jednostavnijoj verziji.Geomorph LODs [560] predstavljaju skup diskretnih modela,
nastao pojednostavljenjem, uz odrzavanje povezanosti izmedju tjemena.Prilikom prelaska sa
slozenog modela na jednostavan, vrhovi slozenog modela interpoliraju(umetnuti se ) se izmedju
njihovih prvobitnih polozaja i polozaja jednostavnije verzije.Kada je prelaz zavrsen, jednostavniji
model detalja se koristi za predstavljanje objekta.Pogledajte sliku 14.25 za primer prelaza.Geomorfi
imaju brojne prednosti.Pojedinacni staticki modeli mogu se unaprijed odabrati kao kvalitetni i lako se
mogu pretvoriti u poligonalne mreze.
Figure 14.25. Leva i desna slika prikazuju model sa malim detaljima i model sa vise detalja.Slika u sredini prikazuje model geomorfa
interpoliran priblizno na pola puta izmedju levog i desnog modela.Imajte na umu da krava u sredini ima jednako mnogo temena i
trouglova kao i model desno.
Poput CLOD-a, iskakanje (popping) se takodje izbegava glatkim prelazima.Glavni nedostatak je sto
svaki vrh mora biti interpoliran;CLOD tehnike obicno ne koriste interpolaciju, pa se sam skup
polozaja vrhova nikada ne menja.Jos jedan nedostatak je sto se cini da se objekti uvijek mijenjaju, sto
moze odvratiti paznju (sto moze biti zbunjujce)Ovo se posebno odnosi na teksturisane
objekte.Sander i Mičl opisuju sistem u kom se geomorfiranje koristi zajedno sa (u sprezi sa) statickim,
GPU-rezidentnim vrhovima i indeksnim baferima.
Srodna ideja zvana frakciona teselacija pronalazi svoj put do hardvera.U takvim semama, faktor
teselacije za zakrivljenu povrsinu moze se postaviti na bilo koji decimalni broj pa se moze izbeci
iskakanje, pucanje (popping).Razlomljena teselacija koristena je za Bezijeve slojeve i premjestaj
mapiranja primitiva.Pogledajte odeljak 13.6.2 za vise informacija o ovim tehnikama.
14.7.2 LOD Selection
S obzirom na to da postoje razliciti nivoi detalja objekta, mora se izabrati koji od njih ce da se
renderuje (iscrta) ili koji da se spoji (kombinuje).Ovo je zadatak LOD odabira (LOD selection), a
nekoliko razlicitih tehnika za to ce biti predstavljeno ovde.Ove tehnike se takodje mogu koristiti za
izbor dobrih okludera za algoritme izbacivanja okluzija.(cudan prevod recenice).
Uopsteno, metrika, takodje se naziva i funkcija koristi, procjenjuje se za trenutnu tacku gledista i
lokaciju obejkta, a vrednost ove metrike bira odgovarajuci LOD.Ova metrika moze biti zasnovana, na
primer, na projektovanoj povrsini granicne zapremina (BV) objekta ili udaljenosti od tacke gledista
(posmatranja) do objekta.Vrednost fje koristi je ovde oznacena sa r.Pogledajte takodje Odjeljak
13.6.4 o tome kako brzo procijeniti projekciju linije na ekran.
Figure 14.26. Levi deo ove ilustracije prikazuje kako funkcionisu LOD-ovi zasnovani na opsegu.Imajte na umu da je cetvrti LOD prazan
objekat pa kada je objekat udaljeniji od r3, nista se ne iscrtava, jer objekat ne doprinosi dovoljno slici da bi bio vredan truda.Desni deo
prikazuje LOD cvor u grafikonu scene.Samo jedno od djece LOD cvora je spusteno na osnovu r.
Range-Based
Uobicajen nacin izbora LOD-a je povezivanje razlicitih LOD-ova objekta sa razlicitim
opsezima.Najdetaljniji LOD ima opseg od 0 do neke korisnicki definisane vrednosti r1, sto znaci da je
ovaj LOD vidljiv kada je rastojanje do objekta manje od r1.Sledeci LOD ima opseg od r1 do r2 gdje je
r2 > r1.Ako je rastojanje do objekta vece ili jednako r1 i manje od r2, onda se koristi ovaj LOD
itd.Primeri 4 razlicita LOD-a sa njihovim opsezima i njihovim odgovarajucim LOD cvorom koristeni u
grafikonu scene ilustrovani su na slici 14.26.
Projected Area-Based
Jos jedna uobicajena metrika za odabir LOD-a (LOD selection) je projektovana povrsina granicne
zapremine (ili njena procjena).Ovde cemo pokazati kako se broj piksela te oblasti, koji se naziva
pokrivenost ekrana , moze proceniti za sfere i kutije sa perspektivnim gledanjem (perspective
viewing), a zatim prikazati kako se cvrsti ugao poligona moze efikasno aproksimirati.
Polazeci od sfera, procjena se zasniva na cinjenici da se velicina projekcije objekta smanjuje sa
rastojanjem od gledaoca (posmatraca) duz pravca pogleda.Ovo je prikazano na slici 14.27 koja
ilustruje kako se velicina projekcije prepolovljuje ako se udaljenost od posmatraca udvostruci.Sferu
definisemo po njenoj sredisnjoj tacki c i sa poluprecnikom r.Posmatrac se nalazi u v gledajuci po
normalizovanom vektoru pravca d.Rastojanje od pravca posmatranja je jednostavno projekcija
centra sfere na vektor posmatranja: d · (c − v).Takodje pretpostavljamo da je rastojanje od
posmatraca do bliske ravni frustuma n.Bliska ravan se koristi u proceni tako da objekat koji se nalazi
na bliskoj ravni vrati svoju originalnu velicinu.Procjena radijusa projektovane sfere je tada:
Povrsina projekcije je tako πp2.Veca vrijednost bira detaljniji LOD.
Figure 14.27. Ova ilustracija prikazuje kako se velicina projekcije objekata prepolovljuje kada se udaljenost udvostruci.
Uobicajena je praksa da se jednostavno koristi granicna sfera oko granicnog okvira objekta.Tanki ili
ravni objekti mogu se znacajno razlikovati u kolicini projektovane povrsine koja je stvarno
pokrivena.Šmajlštig i Tobler su razvili brzu rutinu za izracunavanje projektovane povrsine okvira
[1130].ideja je klasifikovati tacku posmatranja kamere u odnosu na okvir i koristiti ovu klasifikaciju
da se utvrdi koji su projektovani vrhovi ukljuceni u siluetu projektovanog okvira.Ovaj proces se vrsi
pomocu tabele za trazenje (LUT).Pomocu ovih vrhova, oblast se moze izracunati tehnikom
predstavljenom na stranici 910.Klasifikacija je kategorisana u 3 velika slucaja, prikazana na slici
14.28.Prakticno, ova klasifikacija se vrsi tako sto se odredjuje na kojoj strani ravni granicnog okvira se
nalazi tacka posmatranja.Radi efikasnosti, tacka posmatranja se transformise u koordinatni sistem
okvira, tako da su za klasifikaciju potrebna samo poredjenja.Rezultati poredjenja se stavljaju u
bitmasku, koja se koristi kao indeks u LUT.Ovaj LUT odredjuje koliko vrhova postoji u silueti gledano
sa tacke posmatranja.
Figure 14.28. Tri slucaja projekcije kocke, koja prikazuje jedno, dva i tri prednja lica (frontfaces). (Illustration after
Schmalstieg and Tobler [1130].)
Figure 14.29. Geometrija ukljucena u procenu cvrstog ugla.
Zatim se koristi druga pretraga za stvarno pronalazenje vrhova siluete.Nakon sto su projektovani na
ekran, povrsina se izracunava.Izvorni kod je dostupan na vebu.
Da bi odabrali dobar occulder, Coorg i Teller [199] procjenjuju cvrti ugao naspraman poligonu.Ovo se
takodje moze koristiti za izbor LOD-a.Njihova aproksimacija je:
Ovde, a je povrsina poligona, n je normala poligona, v je vektor pravca posmatranja , a d je vektor od
tacke posmatranja do centra poligona.Pretpostavlja se da su i v i n normalizovani.Geometrija je
prikazana na slici 14.29.Sto je veca vrijednost r, veca je korist.Aproksimacija cvrstog ugla procjenjuje
korist jer sto je veca povrsina, veca je vrijednost, a vrijednost je obrnuto proporcionalna udaljenosti
od poligona.Takodje, maksimalna vrijednost se postize kada posmatrac gleda poligon „ceono“, a
vrijednost se smanjuje sa povecanjem ugla izmedju normale poligona i pravca posmatranja
[199].Medjutim, ovo svojstvo je uglavnom korisno za izbor occluder-a, a ne za odabir LOD-a (LOD
selection).
Hysteresis
Do nepotrebnog iskakanja moze doci ako se metrika koja se koristi za odredjivanje koji LOD da se
koristi razlikuje od okvira do okvira (frejma do frejma) oko neke vrijednosti, ri.Moze doci do brzih
promjena izmedju nivoa.
Figure 14.30. Siva podrucja ilustruju oblasti histereze za LOD tehniku.
Ovo se moze rijesiti uvodjenjem neke histereze oko vrednosti ri [661, 1079].Ovo je ilustrovano na
slici 14.30. za LOD zasnovan na opsegu, ali se odnosi na bilo koji tip.Ovde se gornji red LOD opsega
koristi samo kada se r povecava.Kada se r smanjuje, koristi se donji red raspona.
Other Selection Methods
Odabir LOD-a zasnovan na opsegu i projektovanoj oblasti je tipicno najcesce koriscena
metrika.Medjutim, moguce su mnoge druge, a neke cemo spomenuti ovde.Osim projektovane
povrsine, Fankhauser i Sikuen [371] takodje predlazu koriscenje vaznosti objekta(npr. Zidovi su
vazniji od sata na zidu), kretanje, histereza(pri promeni LOD-a korist se smanjuje) i fokus.Fokus
paznje posmatraca moze biti vazan faktor.Npr., u sportskoj igri, figura koja kontrolise loptu je mjesto
na koje ce korisnik obracati najvecu paznju pa drugi likovi mogu imati relativno nizi nivo detalja
[661].
U zavisnosti od primene, druge strategije mogu biti plodne.Moze se koristiti ukupna vidljivost, npr.,
obliznji objekat vidjen kroz gusto lisce moze se prikazati (renderovati) sa nizim LOD-om.Moguce su
globalnije metrike, kao sto je ogranicavanje ukupnog broja visoko detaljnih LOD-ova koji se koriste
da bi ostali unutar budzeta poligona [661].Za vise informacija o ovoj temi pogledajte sledeci
odjeljak.Drugi faktori su vidljivost, boje i teksture.Perceptivne metrike se takodje mogu koristiti za
izbor LOD-a [1051].
14.7.3 Time-Critical LOD Rendering
Cesto je pozeljna karakteristika sistema za renderovanje (iscrtavanje) da ima konstantnu brzinu
frejmova (kadrova).U stvari, to se cesto naziva „u realnom vremenu“ ili vremenski kriticno.Takvom
sistemu se daje odredjeno vrijeme, recimo 30ms i on mora zavrsiti svoj zadatak (npr. Iscrtati sliku) u
tom roku.Kada istekne vreme, sistem mora da zaustavi obradu.Algoritam za renderovanje u realnom
vremenu moze se postici ako su objekti u sceni predstavljeni npr. LOD-ovima.
Fankhaouser i Sekvin [371] predstavili su heuristicki algoritam koji prilagodjava izbor nivoa detalja za
sve vidljive objekte u sceni kako bi se zadovoljili zahtevi konstantne brzine kadrova (frejmova).Ovaj
algoritam je prediktivan u smislu da bira LOD vidljivih objekata na osnovu zeljene brzine kadrova i na
osnovu kojih su objekti vidljivi.Takav algoritam je u suprotnosti sa reaktivnim algoritmom koji svoj
izbor zasniva na vremenu koje je potrebno za iscrtavanje prethodnog okvira.
Objekat se zove O i iscrtava se na nivou detalja koji se naziva L, sto daje (O,L) za svaki LOD
objekta.Zatim se definisu 2 heuristike.Jedna heuristika procjenjuje troskove iscrtavanja objekta na
odredjenom nivou detalja: Cost(O,L).Drugi procjenjuje korist objekta iscrtanog na odredjenom nivou
detalja: Benefit(O,L).Funkcija koristi procjenjuje doprinos slici objekta na odredjenom LOD-u.
Pretpostavimo da se objekti unutar ili u preseku frustuma nazivaju S.Glavna ideja algoritma je
optimizovati izbor LOD-ova (selection LODs) za objekte S pomocu heuristicki odabranih
funkcija.Konkretno, zelimo maksimizovati
Pod ogranicenjem
Drugim rijecima, zelimo da izaberemo nivo detalja za objekte koji nam daju „najbolju sliku“ unutar
zeljene brzine frejmova (kadrova).Zatim, opisujemo kako se mogu procijeniti funkcije troskova i
koristi, a zatim predstavljamo algoritam optimizacije za jednacine iznad.
Tesko je definisati funkciju troskova i funkciju koristi, tako da rade pod svim okolnostima.Funkcija
troskova moze se procijeniti vremenskim renderovanjem (isrctavanjem) LOD-a nekoliko puta sa
razlicitim parametrima.Vidite Odjeljak 14.7.2 za razlicite funkcije koristi.U praksi, projektovana
povrsina BV objekta cesto je dovoljna kao fja koristi.
Na kraju cemo razgovarati o tome kako odabrati nivo detalja za objekte u sceni.Prvo, napominjemo
sledece: Sa neke tacke gledista, scena moze biti previse slozena da bi mogla pratiti zeljeni broj
kadrova.Da bismo to rijesili, mozemo definisati LOD za svaki objekat na njegovom najnizem nivou
detalja, koji je jednostavno objekat bez primitiva – tj., izbjegavamo renderovanje (prikazivanje)
objekta [371].Koristeci ovaj trik, iscrtavamo samo najvaznije objekte i preskacemo nebitne.
Da bi se odabrali „najbolji“ LOD-ovi za scenu, jednacina 14.5 mora biti optimizovana pod
ogranicenjem prikazanim u jednacini 14.6. Ovo je NP-kompletan problem, sto znaci da je za njegovo
ispravno rjesavanje jedino potrebno testirati sve razlicite kombinacije i odabrati najbolju.Ovo je
ocigledno neizvodljivo za bilo koju vrstu algoritma.Jednostavniji i izvodljiviji pristup je koriscenje
pohlepnog algoritma koji pokusava da maksimizovati vrijednost Value = Benefit(O,L)/Cost(O,L) za
svaki objekat.Ovaj algoritam tretira sve objekte unutar frustuma bira da objekte iscrtava u
opadajucem redoslijedu, tj. prvo onog koji ima najvecu vrijednost.Ako objekat ima istu vrijednost za
vise od jednog LOD-a, tada se bira i prikazuje LOD sa najvecom koristi.Ovaj pristup daje najveci
„udarac za novac“.Za n objekata unutar frustuma, algoritam radi O(n log n) i prozivodi rjesenje koje
je barem upola bolje od najboljeg. Fankhaouser i Sikvin takodje koriste koherentnost okvira za kadar
za ubrzavanje sortiranja vrijednosti.
Vise informacija o upravljanju LOD-om i kombinaciji upravljanja LOD-om i uklanjanje portala mozete
pronaci u Fankhauserovoj doktorskoj tezi [372].Masieu i Sirli [806] kombinuju LOD-ove sa
varalicama i predstavljaju algoritam algoritam priblizno konstantnog vremena za prikazivanje scena
na otvorenom.Opsta ideja je da se koristi hijerarhija razlicitih prikaza (neki LOD-ovi, hijerarhijskih
varalica, itd.) objekta.Zatim drvo prelazi na neki oblik kako bi se dobila najbolja slika s obzirom na
odredjeno vrijeme.Mason i Blejk [824] predstavljaju inkrementalni hijerarhijski algoritam za odabir
LOD-a.Opet, razlicite predstave objekta mogu biti proizvoljne.Erikson i drugi [317] predstavljaju
hijerarhijski nivo detalja (HLODs).Koristeci ih, scena se takodje moze prikazati sa konstantnom
brzinom kadrova ili tako da se greska prikazivanja ogranici.Smajlstig i Vimer predstavljaju analiticke
formule za odabir uravnotezenog broja poligona za kontinuirane nivoe detalja [1357]. Koriste
Lagranzove multiplikatore za rjesavanje istog problema koji su Fankhauser i Sekvin rijesili za
upravljanje statickim LOD-ovima [371].
Download