Tarkastellaan sitä: DirectX 11 ja OpenGL vanhentuvat hieman. DirectX 11 esiteltiin Windows 7: llä jo vuonna 2009, ja OpenGL 4.0 seurasi vuotta myöhemmin. Ohjelmistovuosina nämä tekniikat ovat nyt vanhoja, ja heidän käyttämänsä laitteistojen nykyinen sato ei ollut edes piirustuspöydällä, kun nämä grafiikan sovellusliittymät julkaistiin. Koska tämä ilmeinen irtautuminen on, mitä teollisuus tekee saadakseen aikaan? No, katsomme lähitulevaisuutta ja katsomme, mutta aluksi selitetään ensin, mikä on sovellusliittymä ja mitä toimintoa se käyttää pelaamiseen.
Mikä on sovellusliittymä?
API- tai sovellusohjelmointirajapinta on joukko protokollia ja työkaluja, joita käytetään ohjelmistojen rakentamiseen. Grafiikan sovellusliittymät ovat oikeastaan vain erikoistuneita sovellusliittymiä, jotka on rakennettu helpottamaan 3D-grafiikan tuottamista. Grafiikka-sovellusliittymät tekevät 3D-kuvien rakentamisesta helpompaa, mutta niiden avulla voit myös sanoa sovellusliittymälle jotain (esim. Piirtää suorakulmion) ja antaa vuorostaan antaa sovellusliittymän kommunikoida laitteiston kanssa tämän tehtävän suorittamiseksi. Tämä on tärkein syy, miksi niin monet erilaiset GPU: t, joissa on erikoistunut laitteisto, voivat kaikki ajaa samoja pelejä. Ilman API: ta, sama peli olisi kirjoitettava eri tavoin kommunikoidakseen kunkin tietyn laitteistojoukon kanssa. Tämä rajoittaisi vakavasti laitteistovalmistajia ja lisäisi huomattavasti pelien rakennuskustannuksia, kustannukset, jotka lopulta siirretään loppukuluttajalle.
Jotta yllä olevasta selityksestä olisi hieman helpompi ymmärtää, käytän analogiaa: Ajattele API: ta rakennustyömaan johtajana. Hänen tehtävänään on ottaa arkkitehdin idea ja hajottaa se, aikatauluttaa miehistöjen oltava missä ja milloin, ja varmistaa, että kaikki ovat samalla sivulla mitä on tehtävä.
Tällä hetkellä käytetyt grafiikkasovellusliittymät
Nyt kun ymmärrämme grafiikan sovellusliittymän tehtävän, katsotaan tarkemmin nykyistä kokoonpanoa. Nykyään markkinoiden merkittävä toimija on Microsoftin DirectX, joka otettiin käyttöön jo vuonna 1995. Sitä on päivitetty useita kertoja julkaisunsa jälkeen ja se sisältyy Microsoftin Windows-käyttöjärjestelmään. DirectX on yksi grafiikkasovellusliittymä, jota melkein jokainen PC: lle julkaistu peli tukee. Itse asiassa se on niin yleistä, että se on tänään PC-pelaamisen standardi. DirectX on yksinoikeus Windows- ja Microsoft-tuotteille, mikä tekee siitä valitettavasti erittäin suljetun järjestelmän. Seuraava rivi on OpenGL, ainoa merkittävä avoimen lähdekoodin grafiikan sovellusliittymä. OpenGL julkaistiin vuonna 1992 ja on monialustainen, mikä tarkoittaa, että se toimii useiden käyttöjärjestelmien, kuten Windows, Linux ja Mac OS, kanssa. Viimeinkin, meillä on uusin grafiikan sovellusliittymä, Mantle. Mantle kehitettiin vuonna 2013 AMD: n ja Dice: n kumppanuuden kautta. Mantle on saatavana Windowsissa ja vain AMD GPU: lle.
Kuvan lähde; Kuvat: Intel
DirectX 12
DirectX 12 julkaistaan Windows 10: n kanssa tänä syksynä, ja monia uusia parannuksia ollaan tekemässä. Yksi isoista parannuksista on paljon parempi monisäikeinen tuki. Suurempi osa työstä on jaettu CPU: n useille ytimille, mikä mahdollistaa prosessorin käytön paljon paremmin ja tehokkaammin. Usein DirectX 11: llä on vain yksi suorittimen ydin täysin maksimi, kun taas muut ytimet istuvat lähellä tyhjää tilaa. DirectX 12 lupaa jakaa tämän työmäärän CPU-ytimiin tasaisemmin antaen peleille paljon enemmän prosessoritehoa työskennellä. Seuraava iso parannus, jonka DirectX 12 lupaa, on kyky käsitellä paljon enemmän soittopuheluita. Pöytäsoitto tapahtuu milloin tahansa pelimoottori haluaa piirtää jotain näytölle. Useiden vetopuhelujen vaatimus on yleensä erittäin verollinen CPU: lle. DirectX 12: n oletetaan kykenevän käsittelemään jopa 600 000 soittopuhelua. Tämän näkökulmasta katsottuna DirectX 9 pystyi käsittelemään vain 6 000 soittopuhelua tai 1/100: sosa siitä, mitä DirectX 12 pystyy.
Useiden GPU: ien ajaminen SLI / Crossfire-tilassa on ollut jo vuosien ajan mahdollista. Yksi suurimmista rajoituksista oli kuitenkin se, että kortteihin sisäänrakennettu VRAM ei pinoutunut yhteen muodostamaan yhtä suurta, jatkuvaa allasta. Esimerkiksi, jos sinulla on kaksi GPU: ta, joissa molemmissa on 2 Gt VRAM-muistia, sinulla oli käytännössä vain vain 2 Gt VRAM: ää, koska jokaisella kortilla oli oltava samat tiedot siihen tallennettuna. DirectX 12 toivoo ratkaisevan tämän ongelman käyttämällä AFR: ää tai vaihtoehtoista kehyksen renderointia. Kunkin kehyksen jokaisen osittaisen GPU: n sijasta GPU: t nyt toimittavat sen sijaan yhden kokonaisen kehyksen jokaiselle. Tämä sallii kunkin kortin VRAM: n käytön itsenäisesti ja toivottavasti pienempiä VRAM-määriä sisältävien korttien ovat elinkelpoiset pelaamiseen pitkään. DirectX 12: n on tarkoitus sisältää monia muita uusia ominaisuuksia peligrafiikan siirtämiseksi entistä pidemmälle. Microsoftilla on kuitenkin edelleen melko kiireinen kuvaus siitä, mitä nämä uudet ominaisuudet ovat. Tiedämme toivottavasti tietää enemmän heistä, kun sovellusliittymän julkaisu lähenee.
Kuvan lähde; Kuvahyvitys: nVidia GeForce
vulkan
Vulkanista ei tiedä niin paljon kuin DirectX 12: sta, kuten se juuri ilmoitettiin GDC 2015. Tiedämme vain, että OpenGL: n päättäjät, Khronos Group, pudottivat nimen glNext Vulkanin hyväksi. Vulkan näyttää olevan peräisin Mantlesta, jonka mainitsin aiemmin artikkelissa. Lisäksi näyttää siltä, että AMD tuo Mantlen parhaat osat Vulkanin pöytään yhteistyössä Khronos Groupin kanssa. Vulkanilla oletetaan olevan monia samoja DirectX 12: n etuja, mutta sitä ei ole sidottu yhteen ainoaan alustaan, kuten Windows. Sen sijaan se on saatavana monilla eri alustoilla, mukaan lukien Linux ja jopa mobiililaitteet. Sekä Windowsin että Linuxin Vulkan-ohjaimet ovat täysin avoimen lähdekoodin toisin kuin DirectX. Vulkan parantaa monisäiettämistä ja hyödyntää siksi nykyään tehokkaammin nykyistä prosessoritehoa jakamalla työmäärän useille CPU-ytimille. Kuten aiemmin viitattiin, suorittimen kuormituksen vähentäminen mahdollistaa sen, että GPU: t eivät pullonkauloihin ole niin helposti kuin nyt. Tämän pitäisi tarjota melko huomattava kehysnopeus pelaamisen aikana. Source 2, jonka Valve äskettäin ilmoitti, on ensimmäinen uusi pelimoottori, joka tukee täysin Vulkania, vaikka olen varma, että lähivuosina ilmoitetaan vielä monista muista. Dota 2, peli, jonka tiedetään olevan CPU-intensiivinen, näytti käynnissä Source 2: ssa uuden Vulkan-sovellusliittymän kanssa Intelin integroidulla grafiikalla CPU: lla. Tämä ei ole varmasti toivottavaa DirectX 11: llä, mutta Vulkanin kanssa peli näytti pitävän kohtuullisen kuvanopeuden koko ajan. Dan Baker, joka on oksidipelien kehittäjä, meni jopa niin pitkälle, että sanoi: "Ennen kuin GPU-valmistajat saavat toimintansa yhteen ja tekevät GPU: t kymmenen kertaa nopeammin kuin nyt, emme voi suorittaa prosessoria täysimääräisesti". Tämä on hyvä uutinen ihmisille, jotka käyttävät hitaampaa CPU: ta tai joilla on tällä hetkellä paljon GPU: n hevosvoimaa, koska se tarkoittaa, että samassa laitteistossa voidaan saavuttaa paljon parempi suorituskyky.
Kuvan lähde; Kuvahyvitys: Khronos
Mitä tämä tarkoittaa pelaamisen tulevaisuutta?
No, jo pitkään GPU: n teho on kasvanut paljon nopeammin kuin suorittimen teho. Viisi vuotta sitten Intel jopa totesi, että jotkut GPU: t olivat 14 kertaa nopeampia kuin heidän omat CPU: nsa. Nämä testit tehtiin käyttämällä nVidia GTX 280 vs. i7 960 Intel CPU: ta - nyt pidetään suhteellisen vanhentuneena laitteistona. NVidia GTX Titan X: n (tai jopa nVidia GTX 980) ja nykyisen valtavirran prosessoritehokkaan - Intel i7-4790k -suorittimen - välisen etäisyyden tulisi olla paljon suurempi. Yritän huomata, että olemme alkaneet nähdä enemmän ja enemmän pelejä tulostamaan seinälle suorituskyvyn vuoksi CPU: n takia. Kysy keneltä tahansa, jolla on korkea virkistystaajuuden näyttö, kuinka vaikeaa on ylläpitää 100 + fps nykyisillä suorittimilla joissain peleissä. Suoraan sanottuna, se olisi vaikeampaa vain ilman näitä uusia sovellusliittymiä ja niiden kykyä käyttää prosessorin tehoa tehokkaammin. Näiden uusien sovellusliittymien käyttöönotto voi merkitä valtavaa suorituskyvyn parantamista useimmille ihmisille. Lisäksi se antaisi kehittäjille mahdollisuuden rakentaa paljon enemmän CPU-intensiivisiä pelejä kuin meillä on nyt. Kuvittele esimerkiksi sellainen peli, kuten Assasins Creed, jolla on tuhansia NPC: tä näytöllä kerralla ja jotka kaikki ovat vuorovaikutuksessa keskenään ja hahmosi kanssa, kun kävelet kaupunkia. Tai sellaiset pelit, kuten Star Citizen, joissa tarvitset erittäin vahvaa CPU: ta saadaksesi kaikenlaisen vakaan ja hyväksyttävän kuvanopeuden, saattaa lähitulevaisuudessa vaatia parhaimmillaan keskimääräistä CPU: ta ja vahvaa GPU: ta pitämään kiva kiinteä 60 kuvaa sekunnissa.
Viime kädessä tämä on erittäin jännittävä aika olla pelaaja. Kun nämä uudet grafiikkasovellusliittymät julkaistaan, saatamme nähdä vain pitkän tekniikan suurimman pelitekniikan hyppyn. Toivotaan vain, että nämä sovellusliittymät pystyvät täyttämään hypeen, jonka he ovat jo rakentaneet itselleen.
