
Epic Games on niittänyt vuosien varrella mainetta sekä laadukkailla peleillään että laajalle lisensoidulla Unreal Engine -pelimoottorillaan. Nyt yhtiö on julkistanut pelimoottoristaan viidennen merkittävän versiopäivityksen.
Unreal Engine 5:n merkittäviä uusia elementtejä ovat Nanite ja Lumen. Nanite helpottaa mallintajien työtä virtualisoimalla mallien geometrian ja skaalamalla sen tarkkuutta reaaliajassa. Käytännössä tämä tarkoittaa, että kehittäjien pitää luoda vain se yksi korkealaatuinen 3D-malli ja pelimoottori hoitaa automaattisesti kaiken muun. Kehittäjän ei tarvitse miettiä esimerkiksi montako polygonia ruudulle kerrallaan voi piirtää, paljonko ne voivat viedä muistia tai muuta. Nanite streamaa ja skaalaa geometrian automaattisesti sopivaksi. Sonyn tulevalla PlayStation 5 -konsolilla pyörineessä demossa oli esimerkiksi yhteen huoneeseen sijoitettu lähes viisi sataa patsasta, joista kukin rakentui 33 miljoonasta kolmiosta, mikä tarkoittaa 16 miljardin kolmion lähdemateriaalia pelkkiin patsaisiin, minkä pelimoottori skaalaa lennossa sopivaksi.
Lumen on puolestaan Epicin uusi dynaaminen valaistus- ja Global Illumination -ratkaisu. Lumenin kerrotaan toimivan täysin automaattisesti muuttuvan geometrian mukana myös editorin puolella ja heittävän hyvästit valaistuskarttojen (lightmap) tarpeelle. Se toimii automaattisesti myös useiden eri valonlähteiden kanssa.
Myös vain vähän aikaa sitten Unreal Engine 4.25:n mukana esitelty tuotantovalmis Niagara-efektikirjasto on mukana Unreal Engine 5:ssä. Demolla esimerkkinä käytettiin muun muassa sen avulla luotuja ötököitä, jotka reagoivat automaattisesti Lumenin avulla toteutettuun taskulampun valokiilaan. Lisäksi demolla ovat esillä Unreal Enginen oma Chaos-fysiikkakirjasto, parantuneet äänentoistotekniikat ja muita mielenkiintoisia yksityiskohtia.
Vaikka pelimoottori julkistettiin nyt, aivan lähiaikoina sillä toteutettuja pelejä ei päästä pelaamaan. Unreal Engine 5:n esiversio tulee kehittäjien saataville ensi vuoden alussa ja lopullinen versio vasta ensi vuoden loppupuolella. Yhtiö lupaa kuitenkin pitää huolen, että kehittäjät voivat siirtää helposti UE4-projektinsa uuteen UE5-pelimoottoriin ja lupaakin samalla siirtää suositun Fortnite-pelinsä uudelle pelimoottorille vuoden 2021 kesällä. Myös Unreal Engine 4.25 tukee jo seuraavan sukupolven konsoleita ja pelimoottori tullaan näkemään tositoimissa uusilla konsoleilla heti niiden julkaisussa.
Lähde: Unreal Engine
Ihan mielenkiinnosta, montako tiedostoa tossa 80G paketissa on? Windowsin tiedostojärjestelmä on vähän kökkö siinä mielessä että useiden pienten tiedostojen käsittely on todella hidasta verrattuna esim. siihen että purkaisi paketin suoraan muistiin. Ilman levyjärjestelmärajoitteita tommonen Zen2 prossu purkaa tiheään pakatun zipin 1-1,5Gt/s (joka Griffinin väitöksistä huolimatta ei ole tarpeaksi nopeaa jotta se datan striimaus GPU:lle onnistuisi esim. frustumin perusteella).
Kannattaa nyt ottaa huomioon, että nykyprossuissa lepäilee helposti 2-4+ ydintä, pelien ollessa käytössä.
Lisäksi se GPU ei tarvitse sitä dataa jatkuvalla syötöllä kiintolevyn täydeltä, vaan sillointällöin ennakkoon, jonkinverran tekstuureita.
LISÄKSI näyttiksissä on tekstuurien pakkaus, joten ne tekstuurit saavat olla siellä valmiiksi pakattuna (Ei siis edes tarvitse purkaa).
Muuta dataa taa GPU ei juuri kiintolevyltä tarvitse.
Tällä uudella enginellä streamataan tavaraa GPU:lle esim. sen mukaan että mihin suuntaan pelihahmo katsoo sekä liikkuu ja 360 asteen näkymän tarvitsemat kamat saatika koko maailma ei todellakaan ole samaan aikaan siellä muistissa. Koko kaistan täydeltä tapahtuva jatkuva NVME->GPU streamaus (ja sen mahdollistamat asiat geometrioiden ja tekstuurien osalta) on tämän uutisen enginen hienoin uusi ominaisuus. Tavaraa pitää siis saada muutaman framen aikana sinne isoja määriä johon tommonen "kahden lepäilevän ytimen" 250Mt/s ei riitä sitten mitenkään. Pleikkarilla ne tekstuurit voidaan pakata valmiiksi sinne levylle joo, mutta PC:llä se vaatisi yhden asennuspaketin per valmistaja per GPU sukupolvi (per ajuriversio, jos vaikka pakkauksessa on jotain ajuritason hienosäätöjä), joka ei kuulosta kovin kätevältä, ellei sit peliä asennettaessa se prosessoi niitä valmiiksi tjsp.
Tarve datan streamaamiseen SSD:ltä on merkittävästi vähäisempi.
Kaikissa mid-level + higher pelikoneissa on ainakin se 16GB keskusmuistia + 6-8GB näytönohjainmuistia.
Joo kyllähän sitä voi pelejä ’low’ asetuksilla pelata varmaan jatkossakin. Muutama gigatavu sinne tänne ei tule riittämään niille maailmoille joita tulevaisuudessa pystytään oikeasti rakentamaan ja käyttämään peleissä. Jos jokaisessa tilassa on se miljardi+ kolmiota, kuten uutisen pleikkademossa, niin pelkästään niiden koordinaattipisteet + yksi pikseli väridataa per kolmio tekisi yhteensä yhdeksän gigatavua tavaraa muistissa. Luonnollisesti jokainen kolmio omaa oikeasti sen yhden värin sijaan vielä jonkun tekstuurin ja yht äkkiä se 16 gigatavua välimuistiä ei riitä mihinkään.
Kun ottaa huomioon, miten rajusti näyttis on kaistarajoitteinen, niin ei tuo PS5:n 9GB/s riitä mihinkään, kun jo 2 DDR4 kanavaa antaa nyky nopeuksilla siinä 40GB/s.
Voisi olla melkoisen hidas näyttis, jos siinä olisi 1 DDR2 kanavainen muistiohjain!
Jos käydään luottamaan tuohon levyltä tekstuureiden hakuun levyltä, niin FPS romahtaa todella rajusti. Ihan sieltä vain ennakoivati luetaan niitä tekstuureita tarvittaessa.
———–
Ja tekstuurien pakkaus on kyllä PC puolella senverran kivikautinen juttu, että varmasti löytyy ihan myös yhteisiä formaatteja. Jos vain katsotaan tarpeelliseksi ottaa käyttöön.
Ei se pleikkari sieltä levyltä suoraan rendaa mitään, kuten hauskasti halusit väärin ymmärtää, vaan pitää huolen että siinä suunnassa minne pelaaja katsoo on kaikki tarvittavat korkean tarkkuuden mallit ja tekstuurit muistissa. Mitään sellaista ei tarvitse muistissa pitää jota et lopullisessa kuvassa havannoi. Motion blurrilla ostetaan ruutu tai kaksi aikaa jolla sitten ladataan toisen suunnan tarkat mallit ja tekstuurit jos pää kääntyy nopeasti.
Jos oletetaan että koko skenen muistivaatimukset on vaikka 30GT ja FOV on 90 astetta, vaikka mitään etäisyyteen perustuvaa LOD kikkailua ei tehtäisi, niin yhdellä ajanhetkellä ei tarvita kuin n. 1/6 tästä 30 gigasta kerralla muistissa jotta pelaajan näkemä skene voidaan piirtää. Jos vielä etäisyyteen perustuvalla LOD kikkailulla tiputetaan kaukana olevien kappaleiden laatua alas hieman, niin yht äkkiä se pleikkarin 9GB/s riittää streamaamaan jatkuvasti piirrettävän pelimaailman tarvitsemia assetteja sinne GPUn nopeaan muistiin varsinaista rendausta varten.
Yllä oleva systeemi on tän koko Unreal 5 enginen ’nanite’ teknologian pointti.
Tekstuurien pakkauksen tarkka tekninen toteutus on nvidian tämänhetkisen ylivallan yksi suurimmista syistä ja ne tuskis alkaisivat mitään yhteistä settiä AMD:n kanssa rakentamaan ilman että raha vaihtaa suurissa määrin omistajaa.
Kyllähän vaikka Watchdogs 2:ta tai Battlefield V:tä 3950X:llä pelatessa on se neljä ydintä käyttämättä ja nämä ovat jo muutaman vuoden vanhoja pelejä. Tulevaisuudesta puhumattakaan. En oikein jaksa käsittää, miksi jengi tuijottaa näissä ydinmäärissä historiaa ja toteaa, että eihän niitä coreja tarvi kuin neljä. Osa kyllä toimii ihan hyvin neljällä ei siinä mitään, mutta jos aikoo pelailla mainitsemani kaltaisia pelejä lähitulevaisuudessa, niin kannattaa vähintään 6/12-prossuun satsata jos budjetti suinkin riittää.
Tyyliin fifa/nhl vois sisältää jokaiselle pelaajalle ihan uskomattoman tarkkoja skanneja päistä. Siinä kun zoomataan sisään niin ssd lukee pää märkänä ja loppujen lopuksi se 16GB muistia on täynnä pelkkää silmää
Samalla tapaa autopeleissä voisi hyvinkin olla rajoittamaton määrä erilaisia autoja radalla ja ihan uskomattoman tarkkoja malleja, jos ajat esim. edellämenevän puskurissa kiinni. Samoin voi miettiä miten joku grand theft auto next näyttää, jos pullonkaulana ei ole ram/latausaika ja voidaan pitää vain se kama muistissa mitä tarvitaan tyyliin seuraavan sekunnin aikana.
Ei nopeiden ssd levyjen käyttöä voi nähdä mitenkään huonona asiana. Aina jees, jos pullonkauloja ratkaistaan ja ei tarvi kikkailla niiden ympäri. PC saa osansa, kunhan microsoft julkaisee directstorage rajapinnan ja vaatimukset mitä se asettaa raudalle. Lieköhän se on pelkkä optimoitu softarajapinta vai tarjoaa mahdollisuuden rautakiihdytykslle pakkauksessa?
Tämän hetken tarjonnasta jos miettii pelejä isoilla laajoilla kentillä niin kyllä ne usein vain nykäisevät jossain vaiheessa vaikka sitten vain sekunnin verran kun ladataan lisää kenttää. Toteutus lienee yksinkertaisemmasta päästä näissä tapauksissa, mutta tuollaiset ajottaiset nykäisyt tuskin ketään häiritsevät. Eri asia on kun pelasin tässä Star Wars: Fallen Order, mikä nykii toistuvasti paikasta toiseen kulkiessa, joka johtuu sitten mistä? Tuota peliä on syytä tutkia jos aihe kiinnostaa enempi, tosin huomautan ettei peli ole muutenkaan aivan sata prosenttia viimeistelty. Yritän tässä sanoa että parempi käyttää vanhoja hyväksi haivattuja keinoja ennemmin kuin näitä uusia jos riskinä on se ettei pystytäkään toteuttamaan peliä täysin ongelmattomasti, mitä jotenkin uumoilen tapahtuvan jos lähtee liiaksi esim. Naniten kanssa kikkailemaan.
Tosiasia on se että 8- ja 16-bittisten konsolien nollatason latausajoista on siirrytty CD:n myötä pitkiin latausaikoihin ja siitä sitten hitaasti karsittu latausaikaa pois, mutta mikä onkaan se seuraava todellisuus? Latausajat ovat varmasti pienet, mutta tuleeko esiintymään jotain nykimistä sitten kesken pelin kun lataillaan lennosta? Mene ja tiedä.
Fortnite kansiossa on 416 tiedostoa ja 75 hakemistoa. Suurin osa datasta on 4GB konteissa. Eli mielestäni tuossa on ihan kiva hakemisto testailla pakkausta kun ei ole pelkkää ripellystä se sisältö.
Voisitko avata tätä hieman?
Nanitehan on vakiona tossa uudessa enginessä ja sen käyttäminen osana pelikehitystä vähentää työtaakkaa juuri koska ei tarvitse enää hifistellä sen muistinkäytön kanssa ja käsipelillä tuunata jotain 3d mallien kokoja. Juuri tämän pelinkehityksen suoraviivaistamisen takia on odotettavissa että toi yleistyy nopeasti uusissa peleissä, eri asia sit toki että kuinka kompleksisia assetteja alkavat käyttämään ja tuleeko data oikeasti virtaamaan koko kaistan täydeltä. Ovat jo sanoneet että toi osaa automaattisesti(tai vähintään jollain asetuksella) laskea mallien ja tekstuurien kokoa kovalevyn kaistan mukaan, joten mitään turhia nykäisyjä jotka johtuvat legacy pelimoottoreista on turha odottaa.
Okei, jännä sit että miksi purkanimen on noin hidasta. 7z benchmarkissa saa modernit prosessorit jotain 1Gt/s aika helposti.
Valitettavasti sitä ei lasketa noin. Riippuu täysin siitä, mitä siellä 1/6 osassa on näkyvissä. Pelien maisemat ovat noissakin hyvinkin paljon samojen tekstuurien toistoa. Ei siellä juuri koskaan ole täysin erilaista eri suunnissa s.e. joka suunnassa olisi vielä ihan mielettömästi yksityskohtia.
Eikä sitäkään ole ollenkaan hauska katsoa, kun kääntyy toiseen suuntaan ja osa tekstuureista onkin hetken silkkaa suljua.
Tuon ominaisuuden hehkuttamisessa on nyt vain valitetttavasti päässyt täysin karkaamaan mopo käsistä ja kuvitellaan ihan liikoja.
Vaikka näyttiksissä on ihan mielettömästi sisäistä muistikaistaa VS tuo levykikkailu, niin silti niissä on pitkään käytetty tekstuurien pakkausta osittain ihan muistikaistan säästämiseksikin.
Tuo levysysteemi on ihan nopea, mutta ei se yksi DDR2 tasoinen siirtokanava ihmeisiin silti pysty, jos lähdetään hölmöilemään ja yritetään käyttää sitä typerästi näyttiksen muistin korvikkeena. Kun edes haku keskusmuististä 15,8 GB/S nopeus ei riitä (PCIe3X16).
Tuota voidaan hyödyntää striimaamalla sinne potentiaalisesti piakkoin käyttöön tulevaa dataa, mutta sitä ei saa yrittää kiskoa sieltä kovinkaan nopeasti VS näyttiksen muisti tai lopputulos on joko karmeaa suttua tai tökkii muuten pahasti. Tekstuurien hakua muualta on harrastettu jo AGP texturingin aikaan..
Ja jos käydään ihan yleisesti pistämää älyttömiä tekstuureita, niin pakkausta tai ei, pelien koko karkaa tarvittavan levytilan suhteen senverran rajusti käsistä, että tuonne PS5:n levylle mahtuu ehkä 2-4 peliä kerrallaan..
PC puolella 32 Gigaa ei edes nykyään ole "paljon" muistia. Siksikään siellä ei tarvita mitään läheskään yhtä raskaita ja hankalia pakkaamisia vaan homma hoituu ihan samoin myös kevyemmällä algoritmilla.
Konsoleissa on aina ollut se ongelma, että niiden pitää olla huomattavan halpoja. Siksi niissä on ollut tuo muistin määrä sellainen, että siitä ei pääse sanomaan, että sitä olisi "paljon" Noissa tulevissa nyt sentään on onneksi EDES se 16 gigaa GPU+CPU muistialue.
PC puolella ollaan menossa siihen, että pelikoneessa on GPU muistialue vähintään se 8-12 Gigaa ja keskusmuisti PCIE4 16X väylän päässä se 32+ Gigaa.
Lisäksi kiintolevyt ovat jo vaihtumassa M2PCIe4 levyihin, joita esim nuo PS5:nkin levyt itseasiassa ovat.
————————–
Se, missä tuosta on hyötyä on nopea pelin hibernointi ja palauttaminen samaan kohtaan tuolta levyltä.
Kun koko muisti vedetään sinne ja takaisin, niin data pakkautuu yleensä vähintään kohtuuhyvin. ja kun pallaus algoritmi ja / tai rauta on sopiva, niin rajoittavana tekijänä on levyn nopeus..
Tämähän on vain vaihtoehto millä saadaan mahdollisesti ruman näköistä jälkeä, mistä puhuin jo aiemmassa viestissäni tässä ketjussa. Suoraviivaista touhu voi olla riippuen pelistä kuten hetki sitten viestissäni viittasin, eli kun kamerakulmat eivät pyöri villisti ja sen sellaista, mutta pelistä riippuu niin paljon kaikki. En missään tapauksessa kiellä tekniikoiden hyötyjä ja paikkaansa, mutta tässä alkoi jo moni luulla vähän liikoja ja uskoa liikaa Sonyn konsolin paremmuuteen.
Johtui siitä että oli ikivanha 7zip ittellä. Aloin miettimään että olen joskus linux puolella kyllä testaillut lzma pakkausta ja purkua ja siellä toimi säikeistettynä molemmat. Päivitin tuon 7zip ja nyt purku paukutti about 650MB/s 16 säikeellä. Benchmark antaa enemmän mutta se on toki ymmärrettävää se varmaan kurnuttaa suoraan rammissa sitä testiä eikä käy levyn kautta ollenkaan. Niin ja benchissä ei kerrota että mitä presettiä se käyttää, itte vetäsin tuon testin nyt normal. Edellinen oli ultra jota sitten purettiin yhdellä säikellä.
Mutta tuossa siis oli CPU usage aika tapissa, eli ei tommosia nopeuksia prossulla voida vetää jos meinataan taustalla se tehdä häiritsemättä itte peliä.
Ja silti toi on valovuoden päässä siitä mitä Sony lupailee tuolle rauta purulle. Toki algoritmillä on paljonkin väliä, mutta mitä kattelin pakkauksen kehittäjän nettisivuilta info niin niillä on eri algoritmeja eri datalle, että on varmaan aika hyvin optimoitua kamaa ja prossullakin varmaan saadaan kohtalaisia tuloksia.
Jep, tätä se tekee! Eli sinne striimaillaan esim. pelihahmon liikkeiden perusteella dataa valmiiksi jotta LOD vaihdokset ei hypi silmille. Tämä uusi engine tekee sen vain paremmin kuin mitkään aikaisemmat tekeleet ja sen takia mallit voi olla todella tarkkoja. Tätä tarkkuutta voidaan myös käytännössä hyödyntää ton nopean levyn takia (voidaan n. joka toinen sekunti vaihtaa koko näyttömuistin sisältö).
Miten se sitten lasketaan?
Katoitko tota demoa ollenkaan, siis sitä josta tässä nyt keskustellaan? Siinähän on joka suunnassa uniikkia korkean tarkkuuden mallia mielettömillä yksityiskohdilla. Koko demossa on satoja miljardeja kolmioita (olkoonkin että osa on varmaan proseduraalisesti generoitu siinä kohtaa jossa oli 500 samanlaista patsasta). Koko levyllä lienee pakattunakin jotain sata+ gigatavua tuota muutaman minuutin demoa varten ja jotenkin se sieltä striimaa sen oleellisen datan aina ajoissa GPU:n rendattavaksi. Sanovat että demon ajamiseen tarvitaan ainakin joku 970Evo tasoinen SSD, eli n. 2 Gt/s sieltä normaalin liikkumisen aikana ladataan tavaraa näyttikselle.
Joo tämä on ihan totta. Tässä techdemossa josta keskustellaan tilanne on toki toinen.
Sillä keskusmuistin määrällä ei ole mitään merkitystä, sillä ei sitä voida käyttää suoraan näyttömuistina kuten itsekkin jo sanoit. Se että striimataanko assetteja GPU:lle muistista vai levyltä ei ole mitään käytännön merkitystä kunhan nopeus on tarpeaksi korkea pelimoottorin tarvitsemaan käyttöön halutuilla laatuasetuksilla.
Joo hyvä vaan että on lisää vaihtoehtoja tehdä rumiakin pelejä. Ja siinä olet kyllä oikeassa että ei tällä kannata mitään counter strikeä alkaa koodaamaan, vaan nimenomaan jotain semmoisia pelejä joissa ympäristöllä on jotain merkitystä mm. tunnelman luonnissa. Itse en sekuntiakaan Sonyn konsolin paremmuuteen uskonut (vrt. PC), vaan Unreal 5 moottorin paremmuuteen. Aivan uskomaton algoritmikuninkuuden voimannäyte saada aikaiseksi automaattinen LODien hallinta ilman selkeitä artefakteja. (tekijät puhuvat että häviöttömästi, mutta se on ihan varmasti puppua ainakin joissain tilanteissa)
Tottakait sillä on merkitystä, todella paljonkin. Jopa nykyiselläänkin se hitain lenkkikin (PCIe3X16) väylä näyttiksen ja keskusmuistin välillä on nopeudeltaan huomattavasti suurempi (32GB PCIe3X16 VS PS5 9 GB) tuohon PS5:n SSD.hen verrattuna. Ja koska sitä keskusmuistia on paljon, niin sitä voidaan käyttää isona välimuistina, jolloin kiintolevyltä ei tarvitse ladata, kuin huomattavan harvoin ja huomattavan vähän, jos kaikki data ei mahdu näyttiksen muistiin. Tuota systeemiä on käytetty jo parisenkymmentä vuotta, ei siinä mitään uutta siinä mielessä ole.
Konsoleissa vain nuo massamuistit ovat tätä ennen olleet niin umpisurkean hitaita, että ei niistä ole ollut ollenkaan tuollaiseen.
PC puolellakin porukka ostelee surkeita, hitaita SSD levyjä, koska ne ovat halpoja, eikä ole edes tarvetta nopeampiin juuri nyt.
Miksi sillä olisi merkitystä jos pelimoottori on optimoitu (assettien streamauksessa) nopeudelle x ja massamuisti on sitä nopeampi? Pullonkaulaa ei synny jos se on muualla.
Uutisen demossa lienee kovalevyllä kamaa ainakin 100+ Gt.
Demon aikana sinun tulee olla mahdollista päästä minkä tahansa tilan mitä tahansa yksityiskohtaa tarkastelemaan maksimaalisella tarkkuudella. (demossa on vapaan kameran tila)
Demossa voi liikkua niin nopeasti, että koko maailman voi juosta läpi kahdessa minuutissa näin halutessaan.
Kuinka nopea SSD sulla pitää olla jotta pärjäät 32 gigalla keskusmuistia?
Vastaus on että käytännössä lähes yhtä nopea vaikka sulla olis vain 8 gigaa sitä keskusmuistia, sillä joudut joka tapauksessa hakemaan sinne muistiin kokonaan uudet assetit pariin otteeseen demon aikana tolla 32 gigan keskusmuistillakin, ja tällöin pullonkaula on ehdottomasti siinä kovalevyn lukunopeudessa. Pelin käynnistymisaikakin lienee melkoinen jos ensin lataat sinne muistiisi joltain romuasemalta 32 gigaa tavaraa talteen, jottei ihan heti alkaisi nykimään.
Niin ostaa ja ei niitä juuri nyt mihinkään tarvita. Mutta tarvitaanko uusilla engineillä ja uusilla peleillä? Aivan varmasti. Vaihtoehtoisesti keskusmuistia voi hankkia ~peliasennuksen verran, jolloin nopean SSD:n sijaan käytät käytännössä ramdiskiä.
Toisin kuin sinua, niin minua ei kiinnosta tässä väitellä siitä mitä aiempia vaatimuksia on pelimoottoreilla ollut ja miten ne on toimineet. Demolla mainittujen datamäärien perusteella (ja ala-aste matematiikalla) on triviaalia sanoa että millään perus keskusmuistimäärillä ja hitaalla SSD:llä nuo demossa esitellyt asiat eivät vain yksinkertaisesti onnistu.
Jos konsolit hyytyvät sinne 1080p tai max 1440p tasolle ja pc:lla halutaan edellen pelailla 4k resossa niin voi kysyä tuleeko pc assetit olemaan isompia kuin konsoliassetit? Jos vastaus on kyllä niin aletaanko pc peleissä rikkomaan 200GB tai ehkä jopa 300GB rajaa pelien asennuksen koossa seuraavan 5v aikana? Unreal tyylinen joka paikassa on järjettömän yksityiskohtaiset mallit ja tekstuurit voi viedä pelien asennuskoot ihan uusiin ulottuvuuksiin. Jos käsitin oikein niin unreal5:en assettien detaljimäärä on optimaalista sitoa jollain tavalla käytettyyn resoluutioon.
Pleikkarissa ja boxissa olevat tehokkaat pakkausalgoritmit auttavat peliasennusten koossa. Toivottavasti pc:lla pystytään myös purkamaan tehokkaasti ettei asennusten koot räjähdä käsiin huonomman pakkauksen ansiosta. Tehokas pakkaus on iso osa tuota unreal lähestymistapaa ja mahdollistaa enemmän dataa levyllä ja nopeamman muistiin lukemisen.
Tekstuurit kai pakataan kahteen kertaan. Yksi kerta löysempää pakkausta, joka mahdollistaa pienempien palasten käpistelyn ilman koko tekstuurin purkamista. Tuon päälle voidaan lisätä toinen pakkauskerros, joka mahdollistaa purkamisen vain isoina palasina. i.e. striimauksen aikana puretaan tuo tehokkaampi pakkaus ja gpu:n käpistellessä tekstuuria puretaan tuo löysempi pakkaus. Pienien palasten purkaminen kerrallaan johtaa siihen, että on mahdollista löytää toinen pakkaustapa, joka rutistaa datan pienempään kokoon käyttämällä isompia palasia.
Kautta aikain on ollut demoja ja testiohjelmia, joissa testataan yhtä asiaa. Homma menee niissä yleensä täysin överiksi Itse peleissä testiohjelmassa huomattuja ongelmia ei kuitenkaan näy.
Mitä taas SSD:n nopeuksiin tulee, niin Jos demon voi "juosta läpi" 2 minuutissa, niin se on 120 sekunttia.
ESIM
Samsung 970EVO siirtää 3500MB/s jos nyt oletetaan, että sen pitää tehdä huomattavasti muutakin ja nopeus tippuu rajusti esim 1000MB/s nopeuteen, niin se kykenee silloin antamaan dataa 120Gt 120 sekunnin aikana.
En nyt esim onnistu näkemään tuossa hirvittävää ongelmaa.. Ja tuo eis siis ole mikää ihmelevy, vaan kaadukkaampi edullisen pään levy.
Ka jos tekstuurit ovat pakattuja, niin näyttis saa niistä sitten vielä nykyiselläänkin rajusti enemmän dataa irti.
————–
Asia nyt vain on niin, että tuo ei ole alkuunkaan niin ihmeellinen ominaisuus, kuin tuota hehkutetaan. PALJON merkittävämpää on noiden uusien konsoleiden (ja peli engineiden) RT tuki. Tuo tietysti autta sitten konsolin muistin vähyydestä johtuvien ongelmien kanssa jonkinverran. 16 Gigaa kun ei nykymittapuulla ole mitenkään "PALJON" muistia..
Kun UE5 (REL: Late 2021) on ulkona ja sille tehdyt pelit ovat ulkona, niin siihen menee tn ainakin 2 vuotta.
Siinä vaiheessa pitäisi PC puolella olla ihan yleisesti käytössä PCIe4 M2 levyt, jotka ovat paljon tuota 970 Evoa nopeampia. Tällä hetkellä PCIe4 M2 levyjen lukunopeus on siinä 5Gigaa sekunnissa (useita valmistajia). (Hintaluokka $200 /1TB)
Eli engine saa ihan vapaasti vaatia melkoisia lukunopeuksia, eikä siinä ole ongelmaa.
Ollaan näköjään ihan samaa mieltä asiasta, mulla oli vaan vaikeuksia ymmärtää että
tarkoittaa paria gigatavua sekunnissa jatkuvasti.
Tehokas RT tuki on hieno homma, mutta aina kun jotakin rendauksen osakokonaisuutta tehdään realistisemmaksi, niin muutkin osa-alueet pitää nostaa samalle tasolle jotta kokonaisuus on yhtenäisen oloinen. Säteenjäljityksellä rendattu castle wolfenstein tai quake2 ei näytä erityisen tajunnanräjäyttävältä. Tästä syystä nää megatarkat mallit sopii kuin nenä päähän RT rendauksen kanssa. Tässäkin demossa kaikki valoefektit on toteutettu säteenjäljityksellä ja näyttävät todella hyvältä.
Ei hienot tekstuurit, joita monessakin pelissa on, juurikaan tee sitä paremmaksi, jos valaistus toimii, miten sattuu, vähän sieltä tänneppäin, niinkuin se menee, ilman RT:tä… Minecraftista näkii, miten esim eriväriset heijastukset ja läpikuultavuus, sekä oikeanlaiset värien sekoittumiset ym vievät alaa eteenpäin todella ison harppauksen.
Oikeasti suuriin tekstuurien tarpeeseen en ole törmännyt, kuin muutamassa 3D kypärä demossa, jossa kävellään jossain oikeasta paikasta digitoidussa maisemassa. Peleissä voidaan helposti käyttää tekstuureita, jotka pakkautuvat nylyistenkin näyttiksen menetelmin helposti paljon.
Ja jo nykyiset M2 SSD asemat työntävät tuon pari gigaa /s ja yli, joten en nyt onnistu näkemään ongelmaa edellenkään tuossakaan siinä mielessä ainankaan PC puolella, vaikka tuo olisi saatavissa nyt, eikä parin vuoden päästä..
@Griffin ajatus voi toimia jossain putkijuoksussa jossa voidaan ladata ennakoiden sinne muistiin rojua ja jättää sinne rojua jos pelaaja päättääkin tehdä 360 käännöksen. Mutta tuo ei todellakaan tule toimimaan open world skenaariossa jossa pelaaja voi siirtyä ihan minne tahansa, kun taas toi PS5 vaikuttaisi siihen kykenevän, mielestäni loppupätkän pullistelu antoi hiukan maistiaista mihin tuolla tekniikalla oikeasti pystytään.
Tämä johtuu varmaankin siitä että GTAV on sen verran vanha peli että se on tehty HDD ajatuksella. Siellä on todennäköisesti data aika kovin pakattuna levyllä ja sitä sitten kurnutetaan auki yhdellä corella. HDD aikana tää oli nopeampaa noin kuin pakkaamattoman datan lukeminen sieltä HDD:ltä.
Eikös tuo 200 ole jo menny rikki? Oliko joku codi mikä vie yli 200G mutta tämä osin johtuu siitä että on varmaan levyllä pakkaamattomana kun SSD aikana se on nopeampaa lukea pakkaamattoman toisin kuin HDD aikana.
Tuskin menee 2v, toi engine vaikuttaisi olevan jo aika pitkällä, eiköhän epic isommille taloille tuon anna käyttöön ennen virallista julkaisua. Julkaisu tarkoittaa että joka Pertti pääsee sen kanssa leikkimään kun lataa sen.
Jokaisen asiasta kiinnostuneen kannattaa muuten katsoa tämä. Kaveri on ollut työstämässä esim. Frostbite engineä. Nykyään välttää omaa engineä.
Ei ole vielä kokonaan käyny tuota Sonyn esitystä läpitte mutta on tuonut jo tässä vaiheessa merkittävän paljon esille asioita joita perus toope ei tule edes ajatelleeksi kun pelaa peliä. Tuon kun yhdistää aiemmin postattuun spiderman videoon niin on täysin selvää että jatkossa tullaan näkemään entistä kauniimpia ja parempia pelejä kun tekijöiden ei tartte miettiä päätään puhki että miten joku saataisiin toteutettua. Tuossa spiderman videolla käy hyvin selväksi millaista taistelua openworld tekeminen on ollut.
Ja striimattiimpa niitä mistä tahansa, niin täysin uniikkeja ei peleissä yleensä ole paljon näkyvissä kerrallaan. Näinollen, olipa open world tai vaikka kuinka putki, niin peleissä se tarve on pienempi, kuin demossa, jossa päämääränä on viimeisen päälle yrittää demota tuota ominaisuutta. Tämä on niin nähty homma, kun uusia asioita on nääs demoiltu aikaisemminkin..
Ja mitä pakkaamisen purkamisnopeuteen tulee, niin sehän riippuu paljolti siitä pakkausalgoritmistä. Vaadittava suorituskyky käy vain jossain vaiheessa kasvamaan äärettömästi ja tietyn kohdan jälkeen ei pakkaannu, jos data pitää olla palautettavissa 1:1.
Ja uniikeista objekteista ei tarvita mitään tarkkoja tekstuureita, ennenkuin ollaan siinä lähellä, joten striimaamiseen jää siksi aikaa. Ei ne turhaan sanoneet, että Demolle riittää Samsung 970 EVO.
Tuon Late 2021 päivän ovat epiciltä antaneet ja ei niiden pelien tekokaan mitenkään nopeaa ole, vaikka pääsisivät käyttämään enginen kehitysversioita.
Jos pelien koko käy karkaamaan käsistä, niin on täysin selvää, että jonkinlaista pakkausalgoritmia kannattaa jossain vaiheessa pistää kehiin, esim s.e. prossu tai näyttis varaa purkamiseen dynaamisesti resursseja.
Tuo on sitä miten nykyään tehdään eli on LOD, mutta UE5:ssa siitä päästään siis eroon, enää on vain yhdellä tarkkuudella ne textuurit ja engine sitten vääntää lennossa niitä mieleisekseen ettei performance tankkaa.
Toki. Sen takia siihen julkaisuun vielä onkin aikaa jotta siihen julkaisuun mennässä saadaan ulos myös jokunen peli.
No juuri sen takia PS5 ja XSX molemmat sisältää rautaa siihen purkamiseen ettei tartte CPU:ta taikka GPU:ta valjastaa siihen purkamiseen. Detikoitu rauta kun tuppaa aina olemaan merkittävästi tehokkaampaa kuin softaratkaisu, niin nopeudessa kuin energiatehokkuudessa.
Konsoleitten virtabudjetista haihtuisi merkittävä osa siihen purkamiseen jos se tehtäisiin CPU:lla.
Videolla mainittiin ”no authored LODs”, joka viittaisi musta ennemmin siihen että engine laskee ne automaattisesti, mutta ainakin osittain etukäteen. Sinänsä loppukäyttäjälle tolla ei ole väliä että kuinka suuri osa noista rakennetaan lennosta ja kuinka suuri osa rendausfarmilla. Kehittäjääkin kiinnostanee lähinnä vapautuneet resurssit kun ei tarvitse moisella legacyhommalla vaivata päätänsä ja voi keskittyä tarinankerrontaan ja maailmojen luomiseen.
Oli tosi hyvä video. Tyyppi osas selittää kansantajuisesti mistä on kyse.
Jep sehän tuossa on hienoa että perus Pertti saa aika hitosti uutta infoa tuosta kun on kerrottu niin selkeästi.
Eli voisko tuosta päätellä jotakin että PS5:ssa on todellisuudessa jokunen CU enemmän mutta osa on detikoitu tuolle purkamiselle ja olisko sille ääni härvelille kanssa?
Kun taas MS ei ole detikoinut..
Ei. Tuossa siis on idea että data pysyy pakattuna GPU:lle asti, jossa se puretaan lennossa. Säästää muistikaistaa ja prosessoria ei tarvitse vaivata purkamisella.
MS:llä on käytössä ihan samaan tapaan oma pakkaus/purkumetodinsa kuin Sonyylläkin (BCpack).
PS5:n Tempest perustuu kyllä AMD:n johonkin Compute Unitiin (ts ei tietoa onko se GCN vai RDNA) mutta se on irrallinen yksikkönsä eikä dedikoitu yksikkö GPU:n yksiköistä.
Sony buys $250 million stake in Fortnite creator Epic Games
http://www.theverge.com
Kiinnostaisi tietää kuinka moni pulju on myös tekemässä uutta engine versiota tai jopa ihan kokonaan uutta mikä ei ole "xxxxx enginen versio 28", mutta eivät ole vaan julkisuuteen antanut tietoja, vielä… Vuosien työhän tuollainen taitaa olla.
Perinteisiin engineihin voidaan lisätä RT ominaisuuksia siihen päälle, mutta RT on uusi asia ja uusia vaatimuksia aiheuttava asia, joten jos homma tehdään kunnolla, niin engine joudutaan suunnittelamaan moniltaosin, alusta asti RT huomioiden, jotta RT:tä voidaan hyödyntää optimaallisesti.
Tuskin. Keskusmuisti on halpaa ja PC:llä tämä striimaaminen todenäköisesti hoidetaan sen kautta.
Eli siis tavallinenkin SSD riittänee, sieltä ennakoidaan mitä tekstuureita tarvitaan pian, siirretään ne keskusmuistiin ja sieltä sitten striimataan, jos edes vaatimukseksi tulee. Kun seuraava boksi ei tälläistä tue, niin voi olla hiljaista että multiplattarit tuota hyödyntävät ihan pian.
Näkisin, että se tarvittavien assettien määrä kasvaa helposti nopeassa ajassa ennennäkemättömän massiiviseksi, kun pelitalot lähtee kunnolla kilpailemaan. Giganttiseksi siihen nähden mitä on totuttu näkemään, koska pelinkehittäjillä on vain yksinkertaisesti niin vapaat kädet sen suhteen ja se gigatavujen striimaus täytyy tapahtua sekunnin osissa. Eli pysyttelen kannassa. Toki PC-puolella amperen myötä löytyy kohta niitä 24Gt:n puskureilla varustettuja näyttiksiä ja jo vähimillään sitä 12-16Gt:n luokkaa.
Lähde: PCI-Express 4.0 NVMe SSD Performance on Ryzen 3000 & X570
Tuossa vielä oman koneen C-aseman testi, samalla oli taustalla esim. selain auki jossa Tuubista musiikkia ja Forager pyörimässä.
katso liitettä 413349
Sata SSD:tä ei koneessa enää ole, niin sitä ei voi testailla. Hakuajat niissä kuitenkin on nopeat ja sitä reilua 400-500 megaa sieltä paremmilla levyillä ulos tulee sekunnissa. Ja tosiaan keskusmuistia voi aina lisätä siihen vielä lisäksi, kätevää kun PC:llä voi sitä rautaa vaihtaa/päivittää tarvittaessa.
Alkaa jo pikkuhiljaa ruveta levytila haraamaan vastaan, en usko että uusilla konsoleillakaan on useita teroja KÄYTÄNNÖSSÄ tilaa (teoriassa rahalla toki saa). Jos se sitten tarkoittaa että pelejä mahtuu 2-4 kerrallaan asennusmediaan ja asennus on satojen gigojen lataus, niin epäilen että monia alkaisi ahdistaa siihen malliin että kehittäjät harkitsee kyllä tarkkaan sitä sweetspottia tilankäytön ja assettien tarkkuuden suhteen. Huolimatta teoreettisista nopeuksista.
Jos et meinaa että siellä ruvetaan toimittamaan pelit lukuisilla levyillä säännönmukaisesti niin siihen on aika tavalla rajoja paljonko sitä striimattavaa tavaraa voi ylipäätään olla olemassa, puhumattakaan siitä millaista myrkkyä se on digipeleille kun suuri osa maailmasta on erilaisten datacappien takana
Kyyl se boksin asema ihan rivakka on myös koska boksista löytyy myös hardware purku. Sony vaan dusannut vielä custom version siitä asemasta ja lisännyt kanavia.