Yritys päästä eroon 60fps:n tavasta on kovaa työtä.

Se on nykyisten peli-PC:iden Graalin malja: 144fps. Olet tuhlaillut upeaan pelimonitoriin ja yhdistänyt sen nopeimpaan suorittimeen ja yhteen parhaista näytönohjaimista, joita rahalla saa. Se on niin sulava, niin herkkä, ja olet valmis hallitsemaan vastustajiasi ylivoimaisilla taidoillasi – tai ainakin korkeammalla virkistystaajuudella. On vain yksi ongelma. Monissa peleissä 144 kuvaa sekunnissa (tai enemmän) on vaikeaa, ja joskus se on suorastaan mahdotonta. Mistä se johtuu?

Se alkaa pelin keskeisestä suunnittelusta ja ominaisuuksista. En halua heittää varjoa konsoleille (mitä väliä, heitän täysin varjoa konsoleille), mutta kun useat nykysukupolven pelialustat eivät pysty tuottamaan yli 60Hz:n taajuudella, on vain luonnollista, että niillä pelattavat pelit eivät pyri ylittämään 60fps:ää – tai joissain tapauksissa jopa 30fps:ää. Kun pelinkehittäjä lähtee liikkeelle tästä näkökulmasta, sitä voi olla hyvin vaikea korjata myöhemmin. Olemme nähneet Fallout 4:n kaltaisten pelien sitovan fysiikan, liikkumisnopeuden ja paljon muuta framerateen, usein ei-toivotuilla tuloksilla.

Kyse ei kuitenkaan ole vain 30 tai 60 fps:n tavoittelusta. Pelien monimutkaisuus kasvaa jatkuvasti, ja monimutkaisuus tarkoittaa enemmän laskutoimituksia. Yksinpelit ovat tyypillisesti erilainen kokemus kuin moninpelit. Jälkimmäiset ovat luonnostaan kilpailullisempia, mikä tarkoittaa, että korkeammat fps:t voivat olla hyödyllisempiä huippupelaajille, ja niissä jätetään usein pois joukko asioita, jotka voivat kasvattaa ruutuaikoja.

Kilpailulliset moninpelit ovat täydellinen leikkikenttä 144 Hz:n näytöille.

Ajatellaan esimerkiksi pelejä kuten Counter-Strike, Overwatch, PUBG ja Fortnite. Niissä on hyvin vähän tekoälyä tai NPC-logiikkaa, joka tarvitsee tapahtua. Suurin osa maailmasta on staattinen ja vain pelaajat juoksentelevat ympäriinsä, mikä tarkoittaa paljon vähemmän yleiskustannuksia ja viime kädessä potentiaalia korkeampiin framerateihin.

Ensisijaisesti yksinpelit ovat eri asia. Katso vaikka Assassin’s Creed Odysseyn, Monster Hunter Worldin ja Hitman 2:n ympäristöjä. Siellä voi olla satoja käsiteltäviä olentoja, NPC:tä ja muita olioita, joista jokaisella on erilaiset animaatiot, äänet ja muut efektit. Tämä voi jumiuttaa nopeimmatkin suorittimet, joissa suuri osa käsittelystä tapahtuu.

Joo, suorittimen eikä näytönohjaimen. Vaikka näytönohjainta pidetään usein pelisuorituskyvyn pullonkaulana, kyse on lähinnä sopivan resoluution ja grafiikan laadun valinnasta. Vähennä asetuksia ja/tai resoluutiota tarpeeksi alas ja CPU:sta tulee rajoittava tekijä. Monimutkaisissa peleissä tämä CPU-raja voi helposti laskea alle 144 kuvaa sekunnissa. Vaikka 144fps:n saavuttamiseen tarvitaan usein nopea näytönohjain, myös yhtä nopea prosessori voi olla tarpeen.

Assassin’s Creed Odyssey voi saavuttaa lähes 144fps:n … RTX 2080 Ti:llä.

Hitman 2 iskee prosessorin pullonkaulaan noin 122fps.

Monster Hunter Worldilla on myös vaikeuksia päästä yli 120fps.

Katsokaa Assassin’s Creedin, Monster Hunterin ja Hitmanin CPU-vertailuarvoja. 1080p:llä ja matalalla tai keskitasoisella laadulla ajettaessa CPU-suorituskyvyn skaalautuminen on erinomaista, mutta 144fps on silti vaikea este ylittää. Vielä tärkeämpää on se, että skaalautuminen perustuu pääasiassa kellotaajuuteen, ja ytimien ja säikeiden määrä on vähemmän tärkeä tekijä – varsinkin kun siirrytään yli 6-ytimisiin prosessoreihin. Tämä johtuu siitä, että useimpia pelejä hallitsee edelleen yksi säie, joka tekee suuren osan työstä.

Käännä asiat toisinpäin ja ajattele jokaista ruutua millisekunteina. Tasaisella 60fps:llä jokaisella ruudulla on korkeintaan 16,7ms grafiikka- ja prosessointiaikaa. Hyppää 144fps:ään ja jokaisella kehyksellä on vain 6.9ms aikaa saada kaikki valmiiksi. Mutta kuinka paljon aikaa kuluu todellisuudessa kuluvan kuvan renderöintiin? Vastaus on, että se vaihtelee, ja tämä johtaa keskusteluun Amdahlin laista.

Amdahlin lain ydin on se, että koodissa on aina osia, joita ei voi rinnakkaistaa. Kuvittele hypoteettinen peli, jossa yhdellä 4.0GHz Intelin ytimellä kestää 50ms käsitellä kaikki laskutoimitukset jokaista ruutua kohden. Tämä peli olisi rajoitettu 20 kuvaa sekunnissa. Jos 75 prosenttia pelikoodista voidaan jakaa osatehtäviin, jotka suoritetaan samanaikaisesti, mutta 25 prosenttia suoritetaan yhdessä säikeessä, niin riippumatta siitä, kuinka monta prosessoriydintä on käytettävissä, 4,0 GHz:n Intel-suorittimella saavutetaan parhaassa tapauksessa vain 80 kuvaa sekunnissa. Tein nopeaa ja likaista servettimatematiikkaa havainnollistamaan:

Ei varsinaista servettiä, koska käsialani on surkea.

Pelikoodin muokkaaminen niin, että vain 12,5 prosenttia suoritetaan yhdessä säikeessä, ehkä jopa 5 prosenttia, voi auttaa. Silloin 160fps tai jopa 400fps on mahdollista, mutta se vie kehittäjien aikaa, joka voitaisiin käyttää paremmin muualle – ja tietenkään suorittimissa ei ole ääretöntä määrää ytimiä ja säikeitä. Pointtina on se, että on olemassa rajallinen määrä aikaa, joka riittää käyttäjän syötteen, pelitilan, verkkokoodin, grafiikan, äänen, tekoälyn jne. käsittelyyn, ja monimutkaisemmat pelit vaativat luonnostaan enemmän aikaa.

Jopa 4 GHz:n ja sitä nopeammilla suorittimilla, jotka työskentelevät yhdessä tuhansien grafiikkasuorittimen ytimien kanssa, 6,9 sekuntia kuluu nopeasti, ja jos 240 Hz:n kuvaruudun näytöllä pyörii peliä 240 kuvaa sekunnissa sekuntia sekunnissa, jokaiselle ruudulle kuluu aikaa 4,2 sekuntia. Jos matkan varrella tulee ongelmia – esimerkiksi jos pelin on ladattava joitakin objekteja tai tekstuureja tallennustilasta, mikä voi kestää muutamasta millisekunnista nopealla SSD-levyllä kymmeniin ms:iin kovalevyllä – peli pätkii pahasti. Tällaisessa maailmassa me elämme.

Lara ei ole tyytyväinen alle 144 fps:n suorituskykyyn.

Sanotaan asia toisin. Nykyaikaiset PC:t voivat mahdollisesti pureskella miljardeja laskutoimituksia sekunnissa, mutta jokainen laskutoimitus on äärimmäisen yksinkertainen: A + B esimerkiksi. Yhden olion logiikkapäivityksen käsittely saattaa vaatia tuhansia tai kymmeniätuhansia ohjeita, ja kaikki nämä tekoälyn ja olioiden päivitykset ovat silti vain pieni murto-osa siitä, mitä pitää tapahtua joka frame. Pelinkehittäjien on tasapainotettava kaikki, jotta saavutetaan hyväksyttävä suorituskyky, ja PC:llä tämä voi tarkoittaa kykyä käyttää kaikkea vanhasta 4-ytimisestä Core 2 Quad- tai Athlon X4 -suorittimesta aina nykyaikaiseen Ryzen- tai 9. sukupolven Core-suorittimeen asti ja näytönohjaimia Intelin integroidusta grafiikasta aina GeForce RTX 2080 Ti:hen asti.

Pelien luomisessa on mahdollista käyttää erittäin korkeita ruudunpäivitysnopeuksia. Tiedämme tämän, koska niitä on jo olemassa. Mutta nämä pelit eivät yleensä ole huippuluokkaa grafiikan, tekoälyn ja muiden elementtien osalta. Ne ovat pohjimmiltaan yksinkertaisempia joskus ei niin ilmeisillä tavoilla. Pelin ja grafiikan monimutkaisuuden vähentäminenkin voi johtaa vain tiettyyn pisteeseen. Seitsemän vuotta vanha CS:GO 1080p:llä ylikellotetulla 5 GHz:n Core i7-8700K:lla pelatessa tuottaa maksimissaan noin 300 kuvaa sekunnissa (3,3 ms per ruutu), ja pätkiminen pudottaa vähimmäisfps:n noin puoleen siitä. Voit ajaa CS:GO:ta 270-300 fps:n nopeudella kaikella GTX 1050:stä Titan RTX:ään, koska prosessori on tärkein rajoittava tekijä.

Lyhyesti sanottuna, 144 fps:n saavuttaminen ei ole vain laitteistosta kiinni. Kyse on ohjelmistosta ja pelisuunnittelusta, ja joskus on vain päästettävä irti. Jos olet asettanut sydämesi 144fps-pelaamiseen, paras neuvo, jonka voin antaa, on muistaa, että framerate (tai frametimes, jos haluat) ei ole kaikki kaikessa. Kilpailevassa moninpelissä, jossa jokainen mahdollinen latenssietu voi auttaa, pudota asetukset minimiin ja katso, miten peli toimii, ja mahdollisesti nosta muutamaa asetusta, jos liikkumavaraa on.

Kun et pysty ylläpitämään 144fps:ää tai enemmän, 144 Hz:n virkistystaajuudet ovat silti mahtavia – tunnen eron jo pelkällä vuorovaikutuksella Windowsin työpöydän kanssa. Laadukkaammat 144 Hz:n näytöt tukevat myös G-Sync- ja FreeSync-ominaisuuksia, jotka voivat auttaa välttämään havaittavia pätkimisiä ja repeämiä, kun ruudunpäivitys laskee hieman alle 144 fps:n. Täysin sulavat ruudunpäivitysnopeudet olisivat mukavia, mutta se ei yksinään tee pelistä loistavaa. Joten rentoudu ja nauti pelistä laitteistostasi tai ruudunpäivitysnopeudestasi riippumatta.

Uudemmat uutiset

{{artikkelin nimi }}}

Articles

Vastaa

Sähköpostiosoitettasi ei julkaista.