Trimatė grafika
5 (100%) 1 vote

Trimatė grafika

Trimatė grafika

Turinys: Kas tai ir kam to reikia?

Kaip tai veikia?

Trumpas 3D žodynėlis

Apie AGP

3D: kas tai yra ir kam to reikia?

Trimačio vaizdo (3D) spartintuvai (akceleratoriai) – tai kompiuterio aparatinės priemonės (hardware), pagreitinančios erdvinių objektų atvaizdavimą plokščiame kompiuterio ekrane. Juose vartojami grafiniai procesoriai prisiima didžiąją dalį darbo, susijusio su 3D koordinačių (plotis/aukštis/gylis) konvertavimu į 2D koordinates (plotis/aukštis), objektų paviršių „užpaišymu“ bei kitomis operacijomis. Tokiu būdu ne tik žymiai pagreitėja trimatės grafikos pateikimo greitis, bet ir mažiau apkraunamas kompiuterio procesorius (CPU), kuris tuo metu gali atlikti kitas užduotis.

Turbūt nė viena kompiuterijos šaka nesivysto šiais laikais taip greitai, kaip tobulinami grafiniai akceleratoriai. Jei per pastaruosius dvejus metus mikroprocesorių našumas pakilo 2-3 kartus, tai grafinių adapterių greitis išaugo bent jau dešimteriopai. Naujausi grafiniai procesoriai turi virš 3,5 mln. tranzistorių ir tai yra ne ką mažiau, nei jų priskaičiuojama pav. „Intel Pentium“ procesoriuje. „Greičiau, greičiau, greičiau“ – turbūt taip pirmavimo siekiantys gamintojai perfrazuotų visiems žinomą olimpinio judėjimo šūkį. Kone kiekvieną savaitę rinkoje pasirodo nauji produktai, ir kai kas nebespėja paskui neįtikėtinai greitai progresuojančiaus konkurentus. Antai naujausi „elitinio“ videoadapterių gamintojo koncerno „Matrox“ trimačio vaizdo (3D) akceleratoriai jau nebepatenka tarp geriausiųjų šios klasės produktų, puikius rezultatus tuo tarpu pasiekia iki šiol mažiau girdėtos firmos „Number Nine“ ar „Elsa“.

Bene pagrindinė 3D akceleratorių poreikį sukėlusi priežastis yra nepaprastai išaugęs trimatę aplinką vaizduojančių kompiuterinių žaidimų („Tomb Rider“, „MechWarrior“, „Quake“ ir pan.) populiarumas. Be „rimto“ trimačio akceleratoriaus tokie žaidimai praranta didesnę pusę žavesio: vaizdas trūkčioja, daiktų kontūrai dantyti, kai kurių vaizdo detalių iš viso nesimato, nes ir greičiausias MMX procesorius be 3D akceleratoriaus dažnai nesugeba susidoroti su užduotimi atkurti dinamišką trimatį vaizdą pakankamu spartumu. Be to, 3D akceleratoriai praverčia ir dizaineriams, projektuotojams bei paprastiems mirtingiesiems, dirbantiems su trimačio modeliavimo ar virtualios realybės (VRML) programomis. Ir – „last but not least“ – universalūs trimačiai akceleratoriai turi ir dvimačio (2D) akceleravimo funkcijas, pagreitinančias „normalią“ kompiuterinę grafiką. „Windows“ langai varstysis greičiau, „PageMaker“, „PhotoShop“ ar „Corel Draw!“ greičiau nupaišys savo paveikslėlius. Jums teks mažiau laukti, o prie kompiuterio ekrano praleistas laikas teiks daugiau malonumo.

3D: kaip tai veikia?

Tam, kad sudėtingas ervinis vaizdas pasirodytų ekrane, kompiuteris turi išspręsti aibę geometrinių užduočių ir atlikti begales matematinių operacijų. 3D objektų projektavimo ir atvaizdavimo ekrane eigą galima suskirtstyti į kelis žingsnius:

1. Skaidymas

Visų trimačių objektų paviršiai suskaidomi į daugiakampius (poligonus), dažniausiai – į trikampius. Taip žymiai sumažėja 3D scenos aprašymui reikalingas informacijos kiekis ir supaprastinami būsimieji skaičiavimai. Kiekvieno trikampio padėtis erdvėje apibrėžiama trimis taškais, kiekvienas kurių turi tris koordinates (x, y ir z). Kiekvienas taškas (arba tik visas trikampis) gali turėti savo spalvą ir/arba skaidrumą apibūdinančias vertes. Be to, trikampiams kartais priskiriamas ir paviršiaus atspindžio koeficientai bei kitos savybės.

2. Geometrinės transformacijos

Visų 3D objektų (dabar jau tiesiog trikampių) koordinatės perskaičiuojamos, atsižvelgiant į tai, kur yra stebėjimo taškas. Kitais žodžiais tariant, erdvinės koordinatės iš absoliučių tampa reliatyviomis stebėtojo atžvilgiu.

3. Apšviestumo skaičiavimai – Lighting

Apskaičiuojamas objektų apšviestumas. Atsižvelgiant į šviesos šaltinių bei objektų tarpusavio padėtį, apšviestumo reikšmę įgauna kiekvienas trikampio kampas.

Po šio žingsnio 3D vaizdas panašus į pateiktą iliustracijoje dešinėje (spustelėkite pele, kad pamatytumėt daugiau).

Skaidymą į trikampius ir geometrines transformacijas kol kas dažniausiai atlieka kompiuterio procesorius (CPU), nors jau sukurti 3D grafiniai procesoriai, sugebantys atlikti bent jau dalį šio darbo.

4. Rastrinio vaizdo kūrimas – Rendering (Rasterization)

Šis etapas reikalauja daugiausia skaičiavimų ir būtent juos atlieka trimatis akceleratorius, kurio užduotis yra krūvas kompiuterio atmintyje esančių skaičių kuo sparčiau paversti vaizdu monitoriaus ekrane. Rendering’ą vėlgi galima labai sąlyginai išskaidyti į kelis žingsnius:

• Scan Conversion (konvertavima į dvimatę grafiką)

Kiekvienas taškas 3D erdvėje projektuojamas į tašką dvimačiame taškiniame ekrane.

• Clipping, Hidden Surface Removal (nematomų plokštumų pašalinimas)

Atsižvelgiant į ojektų padėtį ir skaidrumą, iš tolesnių skaičiavimų pašalinami objektai ar jų dalys, kurie nėra matomi stebėtojui. Kiekvieno būsimo vaizdo taško „gylis“ (įsivaizduojamas atstumas nuo ekrano iki tame taške matomo objekto) šio žingsnio metu fiksuojamas Z buferyje.

• Texture Mapping / Perspective Correction (paviršių padengimas bei
atsižvelgimas į geometrinę perspektyvą)

Šio žingsnio metu objektai įgauna savo „tikrąjį veidą“: ant „vielinio karkaso“ uždedamos taip vadinamos tekstūros – nedideli paveikslėliai, apibūdinantys objekto paviršiaus spalvą ir raštą (faktūrą). Pav., jei bus vaizduojamas medžio kamienas, tai jo tekstūrą galima palyginti su žievės gabalėliu. Atsižvelgiant į objekto nuotolį, toliau esantys paviršiai dažniausiai padengiami smulkesne tekstūra (MIP-Mapping) arba tokia gaunama, sumažinus esamą (Bilinear Filtering). Šių dviejų metodų kombinacija vadinama Trilinear Filtering. Siekiant sumažinti įstrižų linijų laiptuotumą, šio etapo metu gali būti panaudota Anti-Aliasing technologija.

• Shading (briaunų sugludinimas, atspindžiai, šešėliai)

Paprasčiausiu atveju (Flat Shading) visas objekto trikampis užpildomas vienodai ir jokių papildomų skaičiavimų atlikti nereikia, bet tuomet apvalūs objektai taip ir lieka kampuoti. Gounard Shading atveju kiekvienas trikampio taškas turi atskirą spalvos ir apšviestumo vertę, dėl to briaunų beveik nesimato. Šis metodas žiuo metu vartojamas dažniausiai. Phong Shading įgalina apskaičiuoti ir atspindžius nuo kiekvieno paviršiaus. Tai žymiai pagerina vaizdo tikroviškumą, bet reikalauja daug skaičiavimų.

Šio etapo metu tekstūros bei objektų geometrinės koordinatės iš kompiuterio RAM perkeliamos į akceleratoriaus atmintinę. Jau vien dėl šios priežasties 3D akceleratorius privalo turėti daugiau atminties, nei jos reikia statiškam vaizdui pateikti. Pav, akceleratorius su 2 MB RAM gali parodyti monitoriuje 1024×768 raiškos ir 16 bitų (65.536) spalvų vaizdą, bet, kadangi vaizdo atmintinėje liks tik 0,5 MB laisvos vietos, akceleratorius nebegalės atlikti savo kaip 3D greitintuvo funkcijų.

Šiuo metu Jūs matote 31% šio straipsnio.
Matomi 1016 žodžiai iš 3261 žodžių.
Peržiūrėkite iki 100 straipsnių per 24 val. Pasirinkite apmokėjimo būdą:
El. bankininkyste - 1,45 Eur.
Įveskite savo el. paštą (juo išsiųsime atrakinimo kodą) ir spauskite Tęsti.
SMS žinute - 2,90 Eur.
Siųskite sms numeriu 1337 su tekstu INFO MEDIA ir įveskite gautą atrakinimo kodą.
Turite atrakinimo kodą?
Po mokėjimo iškart gausite atrakinimo kodą, kurį įveskite į laukelį žemiau:
Kodas suteikia galimybę atrakinti iki 100 straispnių svetainėje ir galioja 24 val.