Grafiikka voi aina olla parempaa

16.04.2014 17:12 | Muropaketin toimitus

Harvat ajattelevat miten peleistä voisi tehdä paremman näköisiä. Jotkut pitävät nykyisen sukupolven  pelejä hienoina, mutta monille sekään ei riitä. On selvää, että peliala on mennyt monta vuotta vanhempien, tänään jo alitehoisten konsolien ehdoilla, mikä on tietyllä tapaa jarruttanut teknologioiden kehittymistä. Uuden konsolisukupolven myötä tilanne muuttuu nyt radikaalisti.

Vieraskynä: artikkelin on kirjoittanut Domen lukija, tietokonetaiteilija Kimmo Kaunela.

 

Lähes kaikille on tiedossa, että laitteiden vähäinen muisti johtaa monilla osa-alueilla optimointeihin. Mallien geometriaa piti karsia ja tekstuurien resoluutiota tiputtaa alaspäin. Tekstuureissa silmää huijattiin monilla eri tavoin, eivätkä materiaalit olleet realistisia. Animaatioissa ja fysiikoissa piti myös tehdä tarkkoja säätöjä. Lopuksi kaikki tämä rendattiin matalilla resoluutioilla ja huonolla ruudunpäivityksellä.

PC-pelaajat eivät ole välttämättä joutuneet kärsimään samoista ongelmista. Monet ajattelevatkin, että uuden sukupolven konsolipelit ovat uusilla konsoleilla yhtä sulavia ja tarkkoja kuin PC:llä tällä hetkellä. Toki tämä suuntaa parempaan, mutta wow-efekti voi silti jäädä monilta kokematta. Malleissa näet voi olla polygoneja, tekstuurit ovat suurempia ja kaikki renderoidaan isommilla resoluutioilla, mutta tulos on silti samaa vanhaa, vain parempaan pakettiin käärittynä.

AAA-pelit ja niiden pelimoottorit ovat ottaneet mallia offline-renderöinnin puolelta siitä lähtien, kun se on ollut mahdollista. Elokuvien erikoistehosteet on tuotettu mahdollisimman realistisesti ja siten, että ne sulautuvat muuhun kuvaan. Tämän johdosta offline-rendauksessa luotetaan fysiikan lakien mukaisiin arvoihin.

Myös pelialalla on voitu siirtyä tähän suuntaan. Next-gen-pelimoottorit rakennettiin tukemaan näitä ominaisuuksia ja graafikoille annettiin uusia teknologioita, joita voidaan käyttää grafiikan luomisprosessissa. Fysiikan lakien mukaiset materiaalit ja oikeanlainen valaistus tekevät uuden sukupolven pelien grafiikoista entistä aidompaa.

 

Kaunelan Bioshock-henkinen 3D-dioraama

Klikkaamalla suurempi kuva

 

Kaikki tapahtuu materiaaleissa

Tämänhetkisten pelien grafiikat ovat tietyllä tapaa monimutkaisia. Kaikessa on tarvittu oikoteitä, jotta pelit ylipäätään saataisiin toimimaan kaikilla laitteilla. Optimointeja on rakennettu toinen toisensa päälle, mutta samalla on hukattu fysiikan lakien perustat. Suunta on enemmänkin se, että tehdään mikä näyttää hyvältä ennemmin kuin mikä näyttää oikealta. Näistä lähtökohdista on vaikeaa ja mahdotonta tehdä realistista grafiikkaa.

3D-mallit ovat periaatteessa kaikki samasta puusta veistettyjä. Suurimmat erot syntyvät materiaaleissa, joihin ne niin sanotusti kääritään. Realistista tulosta haettaessa pitää siis tutkia tarkoin materiaalin todenmukaista käyttäytymistä.

Perusta tähän on se, että valo osuu kappaleen pintaan ja heijastuu siitä pois tietyllä tapaa ja tietyissä kulmissa (BRDF). Myös energian säilyvyys on tärkeässä roolissa. Oikeilla arvoilla voidaan simuloida eri materiaaleja. Vanhemmilla konsoleilla tähän ei pystytty, joten eri materiaalit luotiin vaan muistuttamaan niitä. Uusilla konsoleilla tämä tehdään kuitenkin toisella tapaa. Sen sijaan, että arvot valitaan silmämääräisesti, käytetäänkin fysiikan lakien mukaisia arvoja ja tulos on paljon lähempänä oikeaa. Tämä tekniikka on nimeltään physical based shading.

 

Kaunelan uusi projekti. Samaa tekniikkaa käytetään mm. Alien Isolation -seikkailussa. Kuvasta näkee materiaalien pintoja ja mm. paikalliset ray-trace-heijastumat.

Klikkaamalla suurempi kuva

 

Vaikka materiaalit olisivatkin fysiikan lakien mukaisia, valaistus voi silti pilata kaiken. Image based lighting on niin ikään tuttu offline-rendauksen puolelta. Siinä valaistus ja heijastukset saadaan suoraan kuvasta. Näin voidaan luoda paljon luonnollisempia valaistusolosuhteita. Tämä yhdistettynä oikeanlaisiin materiaaleihin tuottaa todella hyviä tuloksia ja muodostuu tärkeimmiksi eroiksi vanhan ja uuden sukupolven pelien ja peliteknologioiden välillä.

Edellä mainitut tekniikat yksinkertaistavat asioita, mutta samalla tulokset ovat lähempänä totuutta. Materiaalien oikeat arvot kerrotaan tekstuureilla, joihin ei enää jätetä muuta informaatiota. Tällä tavoin valaistusolosuhteiden muuttuessa kaikki näyttää yhä hyvältä, eikä kuvassa synny ristiriitaista valotietoa. Samoin grafiikan teosta tulee tietyllä tapaa nopeampaa, jolloin pelit valmistuvat luotettavammin ja nopeammin.

Seuraavan sukupolven peleiltä voidaan siis odottaa tarkempia materiaalien simulointeja yhdistettynä oikeanlaisiin heijastuksiin ja valaistuksiin. Samalla uusien konsolien omistajat pääsevät nauttimaan niistä asioista, jotka ovat olleet jo lähes vakioita PC-puolella – eli muun muassa suurista resoluutioista ja sulavasta ruudunpäivityksestä. Uudet konsolit mahdollistavat myös monien muiden asioiden näyttämisen paremmin. Kaikki tämä on pieni askel realistisempaan suuntaan, mutta silti nimenomaan oikeanlainen graafinen tyyli tekee peleistä pelejä.

 

Kaunelan uusi projekti. Samaa tekniikkaa käytetään mm. Alien Isolation -seikkailussa. Kuvasta näkee materiaalien pintoja ja mm.paikalliset ray-trace-heijastumat.

Klikkaamalla suurempi kuva

 

Käytännössä siis: physical based rendering mahdollistaa aidomman grafiikan, koska silloin voidaan puhtaasti nojata oikeisiin arvoihin shadereissa, jolloin voidaan esimerkiksi määrittää tarkoin mikä on metallia, muovia, ihoa ja niin edelleen. Ennen vanhaan graafikolla oli enemmän omaa vapautta ja tulkinnanvaraa siihen miten he tekivät ”realistista” grafiikkaa, minkä johdosta heillä oli myös enemmän tilaa tehdä virheitä. Uudella tekniikalla sen sijaan grafiikka on tasalaatuisempaa ja eri materiaalit voidaan määritellä tarkoin, minkä johdosta kaikki ei enää näytä kuin tuorekelmun sisään pakatuilta. Ei ole siis sattumaa, että uusin KillZone, Ryse ja Order 1886 käyttävät tätä tekniikkaa silläkin uhalla, että ruudunpäivitys tai muu tipahtaa hiukan.

Samoin valaistus toimii paljon paremmin, koska mitään ei ole ns. beikattu (laskettu etukäteen), vaan kaikki toimii missä tahansa valaistuksessa. Kaikki tämä tietenkin vaatii enemmän laskentatehoa. Isompien resoluutioiden ja parempien animaatioiden ohella tämä tekee grafiikasta paljon parempaa.

Aiheesta on keskusteltu myös foorumilla: Physical Based Rendering (PBR) – Seuraava iso askel realistisempaan grafiikkaan

 

Teksti ja kuvat: Kimmo Kaunela

Lisätietoja: http://kkaunela.webs.com

 

Kimmo Kaunela on mm. työskennellyt pelialalla 3D-graafikkona. Tietokonegrafiikkataiteilija tutkii ja testaa uusia grafiikkateknologioita sekä harrastuksenaan että ammatillisesti. Kahden vuoden takaisen Alan Wake Diner Unity -projektin jälkeen Kaunela loi Bioshock-henkisen 3D-dioraaman PBR- ja IBL –tekniikoilla, ja kirjoitti projektista oheisen artikkelin.

 

Lue myös

Alien Isolation –haastattelu: ”halusimme tehdä pelin, jollaista kukaan ei ole vielä tehnyt” [osa 1]

Android: Netrunner (lautapeli)

Dreadball (lautapeli)

Luminyrkki 2014 – taistelupelaajat kohtasivat Porissa

Panssarivaunuja, kämppimistä ja yllätysliikkeitä – World of Tanks -olympialaiset

Suomen parhaat pelit ja pelialan ilmiöt 2013 palkittiin pelialagaalassa

 

Keskustelu

@4 ja silti tätä grafiikkaa näkee peleissä nykyään? Tuskin tähänkään olisi lähdetty jos se ei olis mahdollista. Ite en koodaajagraffasta välitä joten onhan ne järkevät shaderit aika isossa roolissa, kö? Epic ja muut käyttää jotain taikaa kun saavat asiat toimimaan. Omasta mielestä hienoa, et grafiikkaa pusketaan eteenpäin, ei se oo keltään pois. Ihme itkemistä taas.

@5
Onko nämä asiat jotenkin ristiriidassa keskenään?
Se, että grafiikoita parannetaan teknisesti enginen puolella ei itse asiassa rajoita pelin sisältöä mitenkään.

Ei ne graffat vaan se peli. Realisuus ei ole hauskaa. CoDia on hauska pelata.

Joo-o. Tämä on sitten graafikon mielipide: kaikki tapahtuu materiaaleissa.

Ohjelmoija voi olla eri mieltä. Ja todennäköisesti onkin.

Nyt taas kuvitellaan, että nykyiset GPU:t voivat tehdä monimutkaisia graafisen operaation joka pikselille. Reaaliajassa tietenkin.

Jos nyt oletetaan:

2 mpix * 50 fps niin saadaan parhaassakin tapauksessa 20 single precision käskyä per pikseli. Ja siinä ei mitään kovin monimutkaista tehdä. Värin voi arpoa ja sopivan paikan tekstuurista.

Js sitten ollaankin unohdettu, että hei, ne varjot ei tarvii olla mustia ja siellä on heijastuksia. Eli pitää siitä pixelistä ampua lisä-raytä että saadaan näitä asioita mallinnettua.

Joo, näitä reaaliaikaisen renderöinnin hihhuleita tulee aina parin vuoden välein, ja koska väline on abstraktoinut kaiken, niin todellisuuskuva on ohjelmistojen markkinointimateriaalin varassa (eli täysin päin p****ttä).

Menkää vaikka pihalle potkimaan palloa ja jättäkää se peligrafiikan miettiminen ammattilaisille.

Usein todellisuus on latteamman näköinen kuin hienoimmat videopelit. Half-Lifen Kaupunki 17 remasteroitiin Unrealilla: http://www.pcgamer.com/2014/04/03/half-life-2s-city-17-recreated-in-the-unreal-engine-looks-stunning/

Unrealilla tulos on paljon hienompi ja kivempi katsella kuin Sourcella, mutta realistisempi se ei ole. Realismi ei tarkoita graafista huikeutta, vaan aidon näköistä ympäristöä. Valokuvia photoshopataan ja videoita käsitellään kauneuden vuoksi, vaikka tämä tekee lopputuloksesta nimenomaan hiukan epäaidomman.

Enkä todellakaan tarkoita, että peleistä pitäisi tehdä vastaisuudessa rumempia, vaan että puhe grafiikan kehittymisestä yhä realistisemmaksi on pötyä – realismi kun ei miellytä silmää kunnolla, ellei siihen lisää vähän epärealistisuutta.

Fotorealistisuus on itsessään melko tylsää ja peleissä pelkästään siihen pyrkiminen monella tapaa outo tavoite. Realistiset aspektit grafiikassa taas ovat tärkeitä vaikka tyyli olisikin tyylitelty, koska tämä mahdollistaa grafiikan kertomisen puhtaammin ja siten miten ne oikeassa elämässä voi esiintyä. Tästä syystä asiat voidaan tulkita helpommin kuten mitkä on metallia, muovia, millaisessa ympäristössä kaikki on jne. Näiden myötä voidaan jopa karsia eri filttereitä ja tarjota monella tapaa puhtaampi lopputulos. Esimerkiksi Disney käyttää pbr ja ibl tekniikoita vaikka pyrkivätkin lähes epärealistiseen ja tyyliteltyyn lopputulokseen.

Ajatus siitä, että virtuaalisen pitää näyttää aidolta, on hieman huvittava ja ristiriitainen. Toki realistisuuttakin kaivataan, mutta ilman muuta myös epärealistisuutta, muutenhan ei olisi juuri syytä pelatakaan, jos peli olisi kuin todellisuus. Latteat polygonit ovat mielestäni peleissä yhä suurin ongelma. Todellisuus ei ole tasapintoja.

Muropaketin uusimmat