Hirdetés

Új hozzászólás Aktív témák

  • Abu85

    HÁZIGAZDA

    válasz Cobra652 #177 üzenetére

    Az a baj, hogy a Dunia motor kapcsán volt erre rálátásom az Ubinál, de a Far Cry 4 kiadása után elment a IW-hez Michal, így azóta nem tudom, hogy merre fejlődik. Rajta kívül senkivel sem volt kapcsolatom ott. Bart Wronski volt az Ubisoft Montreal Anvilért felelős csoportjában, de ő is elment a Unity botránya után.
    Akit el tudnék érni az Sebastian Aaltonen, de ő nem a montreáli csapatban van. Emiatt egyelőre csak annyit tudok, hogy az új Anvil motor a GPU-driven renderering pipeline-ra épül, amit használnak mindkét konzolon, a magas szintű elérés ellenére is, mert mindkét konzolon van multi-draw indirect funkció az összes elérhető API-ban. PC-ben ez a funkció némileg modernizálva executeindirect néven van a DX12-ben. Tehát az új AC kapcsán két eset lehetséges. A PC-s port a DX12 használata miatt jobb lesz, mint a konzolos, mert itt már a DX12-hoz nyúlnak az executeindirectre való kifejezetten nagy igény miatt. A másik lehetőség, hogy marad a DX11, de ilyen multi-draw indirect kiterjesztést ehhez az API-hoz csak az AMD kínál. Igaz ők bevallottan az Ubisoft kérésére csinálták meg. Ez megnehezíti a portolást, mert ezt meg kellene oldani NV-n is, amire talán a legjobb módszer az OpenGL-DX11 interoperability. Ilyet épeszű fejlesztő nem akar, de a kényszer nagy úr.

    Általában egy multiplatform cím fejlesztése úgy történik, hogy veszik a célplatformokat, és összesítik azoknak a gyengéig. Ezekből a specifikált minimumokból lesz egy olyan célozható közös alap, amire épülnek a fejlesztések. A platformok közötti különbséget az is jelentősen meghatározza, hogy a platformokon milyen elérést céloznak. Előfordulhat, hogy mindenhol a maga szintű elérés a cél, és ekkor a konzolokon is drága lesz a parancsok beírása a parancspufferekbe. Akár 1 millió órajel is lehet. PC-n magas szintű eléréssel 5-7 millió órajelbe is kerülhet ez a munka. Előfordulhat, hogy a konzolon alacsony szintű eléréssel történik a munka és például ugyanez a feladat a PS4-en csupán 3 DWORD, vagyis 3 (!!!) órajel. Itt jelenti a problémát a PC, hogy annyira kinyílt az olló, hogy az szoftveresen egy mérföldes hátrány, tehát az egész játék szimulációját le kell butítani, hogy a kernel meghajtónak legyen elég processzorideje a grafikára. Többek között ellenőrizni, hogy a beírandó parancs végrehajtásához minden adat rendelkezésre áll-e a memóriákban. Függetlenül attól, hogy ezt manapság konzisztensre szokás tervezni, az alacsony szintű elérésen hiányzó adatellenőrzés miatt, a magas szintű elérésen az ellenőrzés megtörténik, és micsoda csoda, hogy mindig minden ott van, ahol kell. Ez az a kulcstényező, amire egyébként az AMD felfigyelt 2009-ben, hogy valóságban miért is ellenőrzünk PC-n, amikor számos végleges program egyszerűen ellenőrzés nélkül is tökéletesen futna, mert minden előre be van töltve, ráadásul jól. Órajelek milliónyit lehet az ellenőrzés kihagyásával megspórolni, nem beszélve arról, hogy a teljes processzoridőt is elérnék a fejlesztők. Ennek a felismerésnek pedig már tudjuk mi lett a vége a PC-nél, kaptunk/kapunk három alacsony szintű API-t.

    Az Ubisoft szakembereivel nincs baj. Például Michal Drobot (igaz már nem dolgozik ott, de a HRAA-t ott fejlesztette) az első ember, aki előállt igazán jól működő analitikai élsimítással. Nem ő találta ki, az iparág régóta ilyen irányba megy, de a HRAA minősége és teljesítménye áttörés. Ez majd inspirálja a piac többi szereplőjét is.

    Nem az a célom, hogy olyan embereket meggyőzzek, akik élik a saját álomvilágukat. Aki nem akarja befogadni az információt, hát ne tegye. Se kevesebb szabadidőm, se kevesebb pénzem nem lesz ettől. :)

    [ Szerkesztve ]

    Senki sem dől be a hivatalos szóvivőnek, de mindenki hisz egy meg nem nevezett forrásnak.

Új hozzászólás Aktív témák