KOLMIULOTTEINEN TIETOKONEGRAFIIKKA PELEISSÄ



Samankaltaiset tiedostot
Luku 6: Grafiikka. 2D-grafiikka 3D-liukuhihna Epäsuora valaistus Laskostuminen Mobiililaitteet Sisätilat Ulkotilat

Yksinkertaistaminen normaalitekstuureiksi

Cloud rendering. Juho Karppinen 49480E

Luento 3: 3D katselu. Sisältö

Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus

Visualisoinnin perusteet

Tietokonegrafiikka. Jyry Suvilehto T Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2014

T Tietotekniikan peruskurssi: Tietokonegrafiikka. Tassu Takala TKK, Tietoliikenneohjelmistojen ja multimedian laboratorio

Kiipulan ammattiopisto. Liiketalous ja tietojenkäsittely. Erja Saarinen

Selainpelien pelimoottorit

Tilanhallintatekniikat

Case: VirtuaaliViipuri

Videon tallentaminen Virtual Mapista

Reaaliaikainen karvapeitteen piirtäminen näytönohjaimella

Vokselit tietokonepeleissä

Avaruuden muoto. Kuvaus: Tehtävässä pohditaan avaruuden muotoa ja pelataan ristinollaa erilaisilla pinnoilla.

Sisällys. T Tietokonegrafiikan perusteet. OpenGL-ohjelmointi 11/2007. Mikä on OpenGL?

HELSINKI UNIVERSITY OF TECHNOLOGY Telecommunications Software and Multimedia Laboratory Tik Tietokonegrafiikan seminaari Kevät 2003

Venekilpailu! Esteiden väistely ja hahmon ohjaaminen

T Johdatus tietoliikenteeseen ja multimediatekniikkaan Tietokonegrafiikka

Luento 7: Lokaalit valaistusmallit

10.2. Säteenjäljitys ja radiositeettialgoritmi. Säteenjäljitys

PixelFlow. Hans-Erik Grönlund 46549W

T Tietokonegrafiikan perusteet. OpenGL-ohjelmointi

Luento 10: Näkyvyystarkastelut ja varjot. Sisältö

Yleisen PSCR-menetelmän toteutus ohjelmoitavalla näytönoh

T Vuorovaikutteinen tietokonegrafiikka Tentti

Laita tietokone testipenkkiin

OHJ-2710 Peliohjelmointi. Syksy 2012 Timo Kellomäki

Seniorit ja tietokonepelit. Tietokonepelien pelaamisesta senioreiden näkökulmasta. Seniorien pelitapahtuma Enter ry

Harjoitussuunnitelma viikko 6 Pallo haltuun II

Software product lines

Ohjeissa pyydetään toisinaan katsomaan koodia esimerkkiprojekteista (esim. Liikkuva_Tausta1). Saat esimerkkiprojektit opettajalta.

Luku 8. Aluekyselyt. 8.1 Summataulukko

Pong-peli, vaihe Koordinaatistosta. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 2/7. Tämän vaiheen aikana

5. Grafiikkaliukuhihna: (1) geometriset operaatiot

Board Game Lab. 4 Teema. Materiaalit CC-BY 4.0 Mikko Lampi

Reaaliaikainen yli 2 pelaajan moninpeli mobiilille!

Automaattinen rivitys

Harjoitussuunnitelma viikko 5 Pallo haltuun I

Graikka yleisesti tietokonepeleissä

Impedanssitomografia-peli

Pelimatematiikka ja ohjelmointi ATMOS, Mikkeli

Muita kuvankäsittelyohjelmia on mm. Paint Shop Pro, Photoshop Elements, Microsoft Office Picture Manager

MAXIMUS IX FORMULA. 5-Way Optimization Yhden klikkauksen ylikellotus ja jäähdytys

3 Suorat ja tasot. 3.1 Suora. Tässä luvussa käsitellään avaruuksien R 2 ja R 3 suoria ja tasoja vektoreiden näkökulmasta.

Voodoo Dragon 2. Voodoo Dragon 2. Käyttöohje. Versio 1.0

Verkkomoninpelin suorituskyvyn optimointi

Harjoitussuunnitelma viikko 11 Pysähtyminen ja liikkeelle lähtö I

Videon tallentaminen Virtual Mapista

Kenttien suunnittelu videopeleissä

finnish BOI 2015, päivä 1. Muistiraja: 256 MB

PIKSELIT JA RESOLUUTIO

3D-mallinnus ja teksturointi tietokonepeleissä

Hyvä 3D-tuotekuva ja video ilmentävät tuotteen tarkoituksen ja antavat oikeutta sen muotoilulle.

Strategiset suunnittelupelit: SimCity ja Civilization

Kuvan pehmennys. Tulosteiden hallinta. Tulostaminen. Värien käyttäminen. Paperinkäsittely. Huolto. Vianmääritys. Ylläpito.

Jypelin käyttöohjeet» Ruutukentän luominen

AUDIOVISUAALISEN VIESTINNÄN AMMATTITUTKINTO. Valmistavan koulutuksen koulutussuunnitelma, peligrafiikan osaamisala

Prosenttikäsite-pelin ohje

Ohjeet ovat työn alla ja kirjaan niitä päivittäen ja edes takaisin lukien pari viikkoa.

Virtuaalimaailmojen toteuttamiseen käytettävät vaihtoehdot: tarkastelussa VRML, OpenGL ja Java 3D. Toni Kovaniemi

Kvantitatiivisen informaation graafinen esittäminen

Jypelin käyttöohjeet» Ruutukentän luominen

Tapio Takala / Lauri Savioja Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio

Grafiikan kehittyminen ja sen näkyvyys digitaalisissa peleissä

ARVO - verkkomateriaalien arviointiin

Valokuvien matematiikkaa

Raspberry Pi. Yhden piirilevyn tietokone. Tässä dokumentissa kerrotaan yleistä tietoa Rasberry Pi- tietokoneesta ja. sen toiminnoista.

Vektoreita GeoGebrassa.

Ilmailu ja nuoret. Suomen Ilmailuliitto

ELÄMÄN POLULLA -kortit

T Tietojenkäsittelyopin ohjelmatyö

Graafiset käyttöliittymät Sivunparantelu

Pistepilvien hyödyntäminen rakennusvalvonnassa

Kenguru Benjamin (6. ja 7. luokka) ratkaisut sivu 1 / 6

MENESTYSTÄ sinulle FÜR DEN GEMEINSAMEN ERFOLG WELTWEIT

Kenguru 2015 Ecolier (4. ja 5. luokka)

10. Esitys ja kuvaus

Peilaus pisteen ja suoran suhteen Pythonin Turtle moduulilla

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

T Digitaalisen median työvälineet (3 op) ME-C2300 Verkkojulkaisemisen perusteet (5 op) Mediatekniikan laitos / Informaatioverkostot

Arto Naskali 3D FLASH-AUTOPELI

Kaupunkimallit

Juha Ylimäki. Valaisukartat reaaliaikaisessa renderöinnissä

Parasta ammunnanharjoitteluun

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

PÄÄSET PERILLE NOPEAMMIN

Riemannin pintojen visualisoinnista

Janne Pitkäkangas 3D-PELIYMPÄRISTÖN TOTEUTTAMINEN

Gimp 3. Polkutyökalu, vektori / rasteri, teksti, kierto, vääntö, perspektiivi, skaalaus (koon muuttaminen) jne.

Graze MX Powercore monikerroksisten rakennuksien voimakkaaseen pintavalaistukseen

Menetelmäraportti - Konfiguraationhallinta

Kenttien suunnittelu videopeleissä

I AM YOUR 1 NIKKOR FINDER

Suorityskyvyn mittaaminen viittomakielisten videoiden sisältöanalyysissä. Ville Viitaniemi Tietojenkäsittelytieteen laitos 16.1.

JOHDATUS TEKOÄLYYN TEEMU ROOS

KUVAMUOKKAUS HARJOITUS

Nopeus, kiihtyvyys ja liikemäärä Vektorit

Transkriptio:

TEKNILLINEN KORKEAKOULU Tietoliikenneohjelmistojen ja Multimedian Laboratorio T-111.210 Informaatioverkostot: Studio 4 Kevät 2005 KOLMIULOTTEINEN TIETOKONEGRAFIIKKA PELEISSÄ Markus K Berg 60262R Informaatioverkostot markus.berg@hut.fi

JOHDANTO On vaikeaa nimetä toista insinööritieteen alaa, jossa kehityksen vauhti on ollut sekä yhtä huimaa että yhtä näkyvää kuin tietokonegrafiikan kehitys pelien maailmassa. Ennen kaikkea kolmiulotteisuuden vaikutelman toteuttamisessa polku on kulkenut yksinkertaisista rautalankamalleista nykyajan käsittämättömän realistisen tuntuisiin virtuaalimaailmoihin. Tämä kehitys on johtanut siihen, että juuri pelisuorituskyvyn maksimointi on toiminut suurimpana suunnannäyttäjäjä ja standardien sanelijana nykytietokoneiden arkkitehtuurin suunnittelussa sekä tietokoneiden tehokkuusvertailussa. 1990-luvun alkupuolen pelit pyörivät vielä silloisilla tehokkaimmilla kotitietokoneilla optimoitujen koodien ansiosta, mutta kehitys johti nopeasti myös laitepuolen uudistuksiin, kun kolmiulotteista grafiikkaa varten alettiin kehittää ainoastaan tarkoitusta varten suunniteltuja kiihdytinkortteja. Varsinaisen läpilyönnin jälkeen 3dgrafiikkakiihdyttimista on tullut nykytietokoneidenen tärkeimpiä ja arvokkaimpia osia etenkin pelikäyttöön tarkoitetuissa kotitietokoneissa. Kiihdyttimien oma prosessoriteho ja muistin määrä lähentelevät nykyisin jopa itse keskusyksikön vastaavia arvoja. Käytännössä tämä tarkoittaa sitä, että nykypelejä pelatessa, kaiken toiminnan keskellä, joutuu suorastaan pysähtymään katsellakseen ympäröiviä maisemia niiden kauneuden takia. Vaikka pelin grafiikalla onkin pelihistorian alusta asti ollut suuri osa pelin arvioinnissa, on nykyisin keskinkertaisella grafiikalla varustetulla pelillä lähes mahdotonta menestyä myyntilistoilla. Kolmiulotteisuutta ja grafiikkakiihdyttimiä hyödyntämättömiä pelejä ei enää käytännössä tehdä, vaikka pelin rakenne ei välttämättä kolmiulotteisuutta vaatisikaan. Ennen kaikkea pelihahmon perspektiivistä kuvattuja (firstperson-shooter tai FPS) tai aivan hänen vierestään (third-person-shooter) pelitapahtumia seuraavia toimintapelejä voidaan kiistatta pitää kolmiulotteisen tietokonegrafiikan moottoreina tähän mennessä ja myös tulevaisuudessa. Tässä esseessä käsitellään pääpiirteisesti sitä, miten tähän tilanteeseen on tultu ja mitkä tekniikat kehityksen takana ovat olleet. HISTORIA On todennäköisesti lähes mahdotonta sanoa, mikä oli ensimmäinen varsinainen kolmiulotteinen peli. Jo 1980-luvun puolivälissä silloisille tietokoneille, kuten Commodore 64:lle, oli olemassa lentosimulaattorien ja avaruusräiskintöjen tyyppisiä pelejä, joissa pelin objektit olivat toteutettu kolmen ulottuvuuden vektoreista piirretyillä rautalankamalleilla. 1

Grafiikka ei kuitenkaan 8-bittisten laitteistojen rajallisen laskentatehon vuoksi ollut kovinkaan vakuuttavaa, kuten kuvasta 1 käy ilmi. Joitain vuosia myöhemmin hieman kehittyneemmillä laitteilla, kuten Amicat ja Atarit, rautalankamallit saatiin puettua jo alkeellisiin polygoneihin, ts. kolmiulotteisessa avaruudessa sijaitseviin monikulmioihin. Niiden määrä ja kompleksisuus oli kuitenkin erittäin rajoitettu, mutta aitojen kolmiulotteisten kappaleitten vaikutelma onnistui ensimmäistä kertaa peleissä niitten avulla. (1,2) Kolmiulotteisen peligrafiikan ja sitä kautta myös koko pelihistorian mullisti 16-bittiset PC-koneet Kuva 1 Elite Commodore 64 ja käytännössä yksi peli, John Carmackin ja id Softwaren Wolfenstein 3D vuodelta 1992. Jättimenestyksellään se näytti selkeän suunnan tietokonepelien tulevaisuudelle, määritti lopullisesti lajityypin first-person-shooter ja, ennen kaikkea, uudisti vallankumouksellisesti kolmiulotteisuuden tietokonepeleissä. Wolfenstein oli ensimmäinen tietokonepeli, jossa käytettiin tekstuureita, eli polygoneja verhoavia bittikarttakuvia. Tekstuurien avulla ympäristö saatiin huomattavasti aikaisempaa monipuolisemmaksi ja jopa aidomman tuntuiseksi. Wolfenstein antoi lisäksi pelaajalle täyden vapauden liikkua portaattomasti kolmiulotteisen tuntuisessa maailmassa. Täydellinen kolmiulotteisuus oli kuitenkin vielä harhaa, koska tosiasiassa peli toimi kaksiulotteisella kartalla, jossa oli ainoastaan näennäinen, ruudulle piirtyvä korkeusinformaatio. Kuva 2 Wolfenstein 3D (1992) ja Doom II: Hell on Earth (1994) Heti seuraavana vuonna Wolfenstein 3D:n jälkeen id Software julkisti ehkä kaikkien aikojen kuuluisimman tietokonepelin, Doomin. Doom lisäsi Wolfensteiniin 2

korkeusvaihtelut ja tarkemmalla resoluutiolla pyörivän grafiikan. Doomin julkistamisen jälkeen 1993 oli selvää, että first-person-shooterit olivat nousseet pelimaailman suosituimpien lajityyppien kärkeen jäädäkseen. Vaikkei Doomin ideat poikennetkaan Wolfensteinin vastaavista kovinkaan vallankumouksellisesti, vasta Doomin ja sen jatkoosan Doom II:n jälkeen muut pelivalmistajat alkoivat valmistaa omia FPS-pelejä kiihtyvällä vauhdilla. (2, 3) Myös Doomin pelimoottorin kolmiulotteisuuden vaikutelma oli rajattu, koska pelihahmon katsetta (ts. kameraa) ei ollut mahdollista liikuttaa korkeussuunnassa. Vuonna 1995 kolmiulotteisuus vapautui täysin, kun Descent-nimisessä luolalentelypelissä ympärillä olevaa maailmaa oli mahdollista tarkastella kaikkien akseleiden ympäri kääntyvän aluksen sisältä. Oltiin päästy vaiheeseen, jossa kaikkia kuutta mahdollista vapausastetta voitiin käyttää pelimaailman kuvauksessa ja ainoat merkittävät tekijät pelin graafisessa ulkoasussa olivat ainoastaan grafiikan tarkkuus ja aitouden vaikutelma. Kolmiulotteisten pelien valtavan kehityksen myötä alkoi myös nopeasti olla selvää, että tarvetta laitteistopohjaiselle 3d-grafiikkalaskennalle oli. Prosessorien teho ei riittänyt pelimoottorin pyörittämiseen sulavasti kokonaan ja ennen kaikkea niistä puuttui oikeanlainen käskykanta tietynkaltaisten grafiikkatehosteiden suorittamiseen. Vuonna 1997 olikin aika seuraavalle, yhtä suurelle vallankumoukselle kuin mitä Wolfenstein 3D sekä Descent olivat saaneet aikaan pelimaailmassa. Yhtiö nimeltä 3Dfx julkisti Voodoopiirinsä, jonka jälkeen grafiikkakiihdytinkorttien nousukausi alkoi. Voodoo ei käytännössä osannut tehdä mitään muuta, kuin piirtää teksturoituja polygoneja, mutta sen se osasikin tehdä huomattavasti aikaisempia laitteita nopeammin ja puhtaammin. Pelin tekstuurit näyttivät ensimmäistä kertaa pehmeiltä laitteistopohjaisen suodatuksen (bilinear filtering) ansiosta. (1) Kuva 3 Quake (1996) ilman 3d-grafiikkakiihdytintä ja sen kanssa 3

Myös 3d-grafiikkakiihdytinkorttien menestyksessä Wolfenstein 3D:n ja Doomin kehittäneellä John Carmackilla ja id Softwarella oli sormensa pelissä. Jo vuonna 1996 julkaistu jättihitti Quake oli mullistanut FPS-peligenreä täydellisellä kolmiulotteisuudellaan, mutta varsinainen pommi räjähti seuraavana vuonna Quaken ja uusien grafiikkakiihdyttimien yhteistyön tuloksena. Quaken ja Tomb Raider pelin täysin ennennäkemätön graafinen ilme osoitti, että oli vain ajan kysymys, milloin laitteistopohjainen grafiikkakiihdytys tulisi pakollisiksi kaikkiin peleihin. (1,2) Vaikka Voodoo-piirin julkaisemisesta on kulunut jo kahdeksisen vuotta ja pelien ulkoasu on kehittynyt uskomattomin harppauksin kohti yhä fotorealistisempia ympäristöjä, ei kortin julkaisemisen jälkeen yksittäisiä, yhtä suuria mullistuksia ole tapahtunut. Grafiikkakiihdyttimien tekniikoita, käskykantoja ja ohjelmointirajapintoja on kuitenkin kehitetty ja kehitetään jatkossakin valtavalla vauhdilla, mistä lisää seuraaassa kappaleessa. Nykyisin uudet grafiikkakiihdyttimet vastaavat kokonaisuudessaan peligrafiikan dynamiikasta jopa reaaliaikaista dynaamista valaistusta myöten. Kuva 3 on ruudunkaappaus eräästä parhaimpina ja kauniinpina pidetyistä FPS-peleistä, Half Life 2:sta. Kuva 3 Half Life 2 (2004) 4

TEKNIIKKA Ensimmäisten 3d-grafiikkakiihdyttimien ilmestyttyä markkinoille peligrafiikan kehitys on ollut tasaista, mutta nopeaa. Tässä kappaleessa perehdytään hieman niihin keskeisimpiin tekniikoihin, jotka ovat mahdollistaneet valtavan kehityksen Quaken jo sinällään vakuuttavasta graafisesta ulkoasusta esimerkiksi Half Life 2:n, Doom 3:n ja Far Cryn kaltaisiin suorastaan taideteoksiin. Vaikuttaakseen edes etäisesti aidolta, kolmiulotteisen maailman tulee osata näyttää valaistus oikein. Toisin sanoen tietystä suunnasta tulevan valon pitää heijastua objektien ja niitten osien pinnoilta eri intensiteeteillä riippuen polygonien suunnasta valoon ja katsojaan nähden. Suoraan ylhäältä tuleva valo heijastuu kirkkaasti ainoastaan objektin päältä, ei alapuolelta. Helpoiten tämä on toteutettavissa normaalilla, polygonikohtaisella tasaisella varjostuksella (flat shading). Tässä jokaiselle polygonille lasketaan oma valoisuus ja näytetään sellaisenaan. Tuloksena on kuitenkin kovin karkean näköinen jälki, jossa yksittäiset polygonit näkyvät selvästi etenkin pyöreiltä pinnoilta. (1) Tasaista varjostusta selvästi pehmeämmän tulos on toteutettavissa joko Gouraud- tai Phong-tekniikoilla. Gouraud-varjostuksessa jokaiselle verteksille eli polygonin kulmapisteelle lasketaan oma valaistusarvo ja itse polygonin valoisuusarvo interpoloidaan näistä verteksien valaistusarvoista. Tuloksena on jo lähes aidon näköinen pinta (ks. kuva 4) ja tämä varjostus onkin yleisesti pelimoottorien käytössä. Phong-varjostuksella saadaan täydellisesti jakautunut valaistus laskemalla jokaiselle objektin pikselille valaistusarvot, mutta hyöty Gouraud-varjostukseen ei ole niin suuri kuin sen vaatima laskentateho suorittimelta, joten reaaliaikaisessa piirtämissä sitä ei juurikaan käytetä. Sen sijaan Gouraud-varjostus ei vaadi kovinkaan runsaasti laskentatehoa ja on toteutettavissa jopa ilman grafiikkakiihdyttimiä. (1) Kuva 4 Tasainen, Gouraud- ja Phong-varjostus 5

Varjostuksen lisäksi erittäin tärkeää objektien ulkonäön kannalta on mahdollisuus liittää polygonien pinnoille bittikarttakuvia eli tekstuureita. Ensimmäisen kerran tämä oli aidosti toteutettu Quakessa ja Descentissä, koska Wolfenstein 3D:n tai Doomin kaltaisia pelejä ei voida määritelmän mukaan pitää täysin aitoina kolmiulotteisina peleinä. Ennen kaikkea suuremmilla resoluutioilla teksturointi vaatii kohtalaisesti laskentatehoa, joten se oli ensimmäisten grafiikkakiihdyttimien ainoita tehtäviä tekstuurisuodatuksen lisäksi. (1) Ensimmäiset grafiikkakiihdytinkortit jättivät itse kolmiulotteisen ympäristön laskemisen vielä itse koneen prosessorille. Seuraava askel kolmiulotteisen grafiikan tekniikassa oli niin sanotut T&L-yksiköt (transform & lightning), joiden avulla ympäristön objektien ja niiden valaistuksen laskenta siirrettiin kokonaan näytönohjaimen vastuulle. Näin prosessorin ainoaksi tehtäväksi jäi itse pelimekaniikan laskenta. T&L-yksiköt eivät paranna pelin ulkoasua mitenkään, mutta hajautetun laskentatehon ansiosta niiden vaikutus pelien nopeuteen on huomattava. (1) Edellä mainittujen tekniikoiden ilmestymisen jälkeen suuria mullistuksia tekniikoissa ei ole tapahtunut. Kuitenkin pienten lisäominaisuuksien mukana, niiden kehittyessä ja ennen kaikkea laskentatehon kasvaessa uusimmat näytönohjaimet ovat lähestymässä kovaa vauhtia fotorealistista grafiikkaa. Seuraavassa muutamia tekniikoita, joita aivan uusimmat näytönohjaimet käyttävät kolmiulotteisen grafiikan piirtoon. Kuvan 4 pallojen reunoilla on selkeästi havaittavaa sahalaitaisuutta, joka on tietokonegrafiikassa hyvin yleinen, resoluutioon liittyvä ongelma. Koska pikselit ovat rajoittuneet ruudukoihin, ei vinojen reunojen tai viivojen esittäminen tasaisesti ole mahdollista kahdella värissä. Tätä tarkoitusta varten on jo pitkään ollut olemassa reunanpehmennystekniikka eli antialiasointi. Kuitenkin vasta viime vuosien uusimmat näytönohjaimet ovat laskentateholtaan ja arkkitehtuuriltaan niin kehittyneitä, että reaaliaikainen reunanpehmennys on mahdollista. Nykyisin käytössä oleva multisämpläystekniikka perustuu siihen, että jokaisen pikselin peittämä alue jaetaan osapikseleihin, ja varsinaisen pikselin väri perustuu näitten osapikselien keskiarvoväriin.tällöin esimerkiksi musta sahalaitainen reuna valkoisella pohjalla ikäänkuin sumenee harmaaksi jolloin silmä näkee reunan tasaisena ja pehmeänä. (4) Reunanpehmmennyksen lisäksi aitouden tunnetta nykypeleihin tuodaan uudentyyppisellä tekstuurisuodatustekniikalla. Aikaisemmat suodatustekniikat (bilinear, trilinear) eivät ottaneet huomioon sitä tosiasiaa, että tekstuurit näyttävät oikeilta vain suoraan edestäpäin katsottuna. Uuden anisotrooppinen suodatuksen myötä tekstuurit saadaan näyttämään huomattavasti aidommilta näytteistämällä pikseleitä tekstuureista niin, että katsojaan nähden vinot pinnat eivät sumeudu entiseen malliin. Anisotrooppinen suodatus on hyvä esimerkki siitä, miten valtavasti laskentatehoa vaativia operaatioita on mahdollista suorittaa reaaliajassa vain tiettyä asiaa varten kehitetyillä suorittimien käskykannoilla. (5) 6

Aivan uusimpia ominaisuuksia näytönohjaimissa ovat pikseli- ja verteksivarjostinyksiköt. Käytännössä verteksinvarjostinyksiköt mahdollistavat T&L-yksikön toimintojen korvaamisen ja niiden muuttamisen täysin ohjelmoitaviksi. Tämä mahdollistaa esimerkiksi reaaliaikaisen dynaamisen valaistuksen ja varjojen piirtämisen reaaliaikaisesti. Pikselivarjostinyksiköllä muutetaan jo valmista kaksiulotteista kuvaa muokkaamalla esimerkiksi pintojen väriä ja tekstuuria. Tällaiset efektit ovat ennen olleet käytännössä mahdottomia ja ovat tärkeässä roolissa muun muassa Doom 3:n ja Half Life 2:n graafisessa loistossa. Varsinkin maallikon silmin on vaikeaa nähdä tulevaisuudessa syntyvän uusia suuria, käänteentekeviä keksintöjä kolmiulotteisen tietokonegrafiikan saralla. Sen sijaan on täysin varmaa, että kehitys jatkuu pienin harppauksin uusien tekniikoiden ja ennen kaikkea tehokkaimpien laitteiden myötä. Huimaa vauhtia jo kymmenisen vuotta kestänyt kehitys tuntuu edelleen jatkuvan nopeana ja onkin erittäin mielenkiintoista seurata, minkälaisia pelejä julkaistaan muutaman vuoden päästä, puhumattakaan tulevien vuosikymmenten vaikutuksesta kolmiulotteisen peligrafiikan suhteet. Niihin aikoihin verrattuna, nykyiset huippugrafiikat näyttänevät alkeellisilta töherryksiltä. 7

LÄHTEET 1. Artikkeli Brief Glimpse into the Future of 3D Game Graphics - Michal Necasek, 2002 Saatavissa osoitteesta http://www.justadventure.com/articles/3d/3dgraphicstrens.shtm 2. 3D Engines in games Introduction - Michal Valient, 2001 Saatavissa osoitteesta http://www.dimension3.sk/mambo/component/option,com_docman/task,doc_dow nload/gid,4/ 3. Wikipedia-artikkeli First-person shooter Saatavissa osoitteesta http://en.wikipedia.org/wiki/first-person_shooter 4. Artikkeli Grafiikan turboahtimet Vertailussa DirectX9-näytönohjaimet Ville Suoranta, Henrik Kärkkäinen Mikrobitti 4 / 2004 5. Artikkeli Grafiikkaloiston kulissien takana - Ari Rantanen Saatavissa osoitteesta http://www.mikrobitti.fi/nettijatkot/2004/11/nayttikset/ 6. Todellista tehoa - Ville Suoranta, Matti Erikkilä http://www.mikrobitti.fi/nettijatkot/2004/06/naytonohjaimet/ KUVALÄHTEET kuva 1: http://www.frontierastro.co.uk/frontier/bigbeeb.html kuva 2: http://www.wolfenstein3d.co.uk/jjress1.jpg ja http://www.combatfolk.ru/games/doom/mastersofdoom/doom2-screens/doom-2- screenshots-10.jpg kuva 3: http://games.tiscali.cz/hardware/tema/3dfxhistorie1/quake-split.jpg kuva4: http://www.justadventure.com/articles/3d/3dgraphicstrens.shtm 8