Jöhet a CryENGINE is Linuxra

Címkék

A Valve után egy másik AAA játékokat gyártó cég kacsintgat a Linux felé. A Crysis sorozat mögött álló Crytek linuxos programozót keres, akinek az lenne a feladata, hogy portolja / karbantartsa a CryENGINE linuxos verzióját. Ez pedig azt vetíti előre, hogy előbb-utóbb akár Linuxra is elérhetők lehetnek a CryENGINE-re épülő játékok.

Hozzászólások

Kérdés: milyen olyan eszközök segítik most a linux-ra váltani vágyó game cégeket, vagy akár anno a google-t az android kapcsán, amiket nem linux fejlesztésért fizetett emberek készítettek, hanem a "közösség"?

Komolyan kérdezem, felötlött bennem, hogy mennyire lesz ebben a váltásban tényleg értékes az, amit elvileg a FOSS közösség összehozott (BSD példák is jöhetnek, csak nem tudom mennyire releváns).

Na EZ már komoly dolog. Az egyik legszebb engine, ami azt is megmutathatja, mire képest az ogl3/4...

A cryengine direct x-et használ pc-re és xbox-ra, illetve PSGL-t a ps3-hoz (a psgl egész közel áll az opengl-hez, de nem az).
Akkora probléma nem származik belőle, mivel a háromszög mindenütt háromszög, illetve saját shader nyelvet használnak és ezt "konvertálják".
Példa: a source engine is direct x alapokon megy, viszont az api réteg egy köztes, gyors wrapperen van átfűzve így a grafikai engine-t nem kellett nagyon portolgatni linux fele (ők shader nyelvként hlsl-t használnak, ami a direct x-hez kötődik, ebből van egy konverziós tool ami előállítja a glsl shader kódot). Ez utóbbi tool egyébként fellelhető abban a forrásban is, ami a HL2 alfa forrása (és kiszivárgott netre).

// Happy debugging, suckers
#define true (rand() > 10)

Igen, ennek így kell lennie! Remélem szép lassan jön majd a Ubisoft az Activision és így tovább és így tovább. De rendes Driverekre is szükség lesz hogy az ilyen nagyon komoly játékokhoz készült videó kártyákat megfelelően használni is lehessen.

//Nekem sajnos ez az egy pici problémám van a Linuxon való játékkal, nincs egy nagyon brutális videó kártyám (Radeon HD7470M) viszont a mai napig nem találtam megfelelő Linuxos Drivert hozzá!//

//Nekem sajnos ez az egy pici problémám van a Linuxon való játékkal, nincs egy nagyon brutális videó kártyám (Radeon HD7470M) viszont a mai napig nem találtam megfelelő Linuxos Drivert hozzá!//

Uhh, itt ilyet mondani. Halottról vagy jót, vagy semmit! Picsogás, fud, works4me, troll.

Most én nem vagyok képben ilyen témában, azt tudom hogy 7-10 éve nvidia zárt driverei teljesen jók voltak. Mostanában meg általában a linuxos drivereket itt hupon szidjátok. Kérdem én, nvidia zárt driverei még továbbra is jók, ugye? Vagy nem?

Én 1-2 éve használtam utoljára, akkor szörnyű volt. DKMS-t használt, minden egyes kernel frissítéskor imádkoztam, hogy sikerüljön a fordítás. Ha nem sikerült, akkor konzolból kellett helyrehozni a napló alapján. Persze ez mindig a legrosszabbkor történt szóval volt, hogy ideiglenesen visszalőttem a vesa-t vagy a nouveau-t.

Linux alatt az egyetlen megbízható grafikus driver az Intelé (HD Graphics szériától): https://01.org/linuxgraphics/about
Nyílt forráskódú és tökéletesen megy videógyorsítás is.

Sosem volt gondom az Nvidia zárt driverével, kivéve mostanában. Egyrészt az optimus miatt, mert csak bubmblebeevel képes működni, másrészt most van valami nagyon súlyos hibájuk vindóz alatt, ami nekem is előjött wine-nal.
Itt írnak róla: http://prohardver.hu/hir/nem_oldja_meg_rejtelyes_hibak_geforce_driver.h…
--
AGA@
Fork portal és az egyik logóm :)

Kedvelem az ilyen intel driver magasztaló írásokat. Kár hogy a hardver alkalmatlan komolyabb teljesítményre így játszani se kell vele nagyon. De a driver se igazán nagy szám, szoktak vele problémák lenni. Nálam az nvidiával sokkal kevesebb probléma van. Olyan előfordul, hogy a legújabb kernellel, például a mostanival, nem fordul le, de az efféle problémák elég ritkák. Az átlagos bubuntu usereket ez a probléma nem fogja érinteni. És mindemellett a legesleggyengébb nvidia kártya is sokkal gyorsabb az intelnél...

Vajon a korábbi Crytek játékokat is portolják Linuxra vagy csak a jövőbelieket fogják kiadni rá?

Itt is írják fentebb hogy megy ez, nem utólagos visszafejtésre kell gondolni, mert nekik meg van a forrás. Az meg már szinte mindegy DX vagy OGl felé viszik.
No meg sorra jelentik be a társaságok a Linuxos portokat. Ha a Valve Steamboxa bejön -esélyes- akkor az EA és a többi ilyen is elgondolkodik a Linuxon , keményen.
Cryteknek meg azért is lehet jelentősége a Linux, mert a motorjukat legtöbbször nem játékokhoz adják el, hanem szimulációkhoz, épületek tervezőszoftvereihez (CAD like) stb. Szintén kevéssé ismert, hogy ezeken a területeken is jelentős számú nem M$ OS-t használnak. De ez már nem igazán opensource terület.
Ne kérj forrást, nem könyvjelzőzöm ilyeneket.
--
AGA@
Fork portal és az egyik logóm :)

Olyanról már hallottam, hogy assemblyben optimalizáltak kódrészeket egy processzorra de olyat még nem, hogy operációs rendszerre optimalizáljanak grafikát vagy game script-eket egy már portolt game engine mellett.

Portolják a CryEngine-t Linuxra, és ezzel egyben "optimalizálni" is fogják, mert egy gyengén teljesítő portba nem fektetnének pénzt. Ezek után milyen további optimalizációt akarsz? Hímezzenek pingvin mintákat VR kesztyűben a grafikusok a játékbeli karakterek ruháinak hajtókájára? :-)

Elmondom mire gondoltam laikusként.
1) Ha igaz lenne, hogy az engine portolás után nem kell már sokat mókolni a játékon, akkor miért nincs még kinn linuxra az összes valve játék? Nyilván valami optimalizációs munkát végeznek, ami nem feltétlenül grafikai munkát jelent.
2) Még a meghajtókban is szoktak játék és nem (csak) motor specifikus dolgokat változtatni, majd pont egy játékban nem fognak OS függő optimalizációt végezni.

De nem kötözködésből írom ezt, én is örülnék, ha lennének linuxon olyan húzónevek, mint a crysis vagy a battlefield, de amíg nem jön a steambox vagy nem ugrik hirtelen a linux desktop részesedése, addig nem valószínű, hogy meglépik a dolgot.

Szerintem a pedig a másolásvédelem jelent inkább problémát. Erre eddig csak a Valve kínál megoldást, vagy vannak mások is?
Hasonló ambíciókkal rendelkező nagy kiadók inkább a saját online rendszerüket terjesztenék a Steam támogatása helyett, saját másolásvédelemmel mint az EA az Origin-t. Csakhogy az EA még nem készült el az Origin linuxos verziójával, de nekik is vannak linuxos ambícióik csak ők inkább teljesen wine alapon dolgoznának Mac játékkiadásaikhoz -cider- hasonlóan. Bethesda is szeretne saját digital distribution platformot de ők még a Windows verzióval sem készültek el. Az olyan másolásvédelemtől pedig amit az Ubisoft használ a bsd démonjai óvják a Linuxot. :-)
Kis Indie kiadók nem akarnak saját digital distributiont, nekik jó a Steam és egyre többen ott vannak Linuxos játékaikkal.
A 2) ponthoz, ezt a game engine-nek kell tudnia, ott van a helye az OS függő optimalizációknak. Ma amikor eleve sok platformra kell fejleszteni az az engine sikeres szerintem amire gyorsan lehet fejleszteni és nem kell vele felesleges köröket futni platformonként.

A hibás logikád még mindig ott áll, hogy a Crytek elősorban játékfejlesztő, és hogy egy nagy cég. Inkább híres.
Csak gondolnak a jövőre is, és abban már benne van, hogy nem éri meg vindóz exkluzívnak lenniük. (OK, PS is.)
A Valve meg valami másra is készülhet, pl. fogalmam sincs miért csak a legújabb Nvidia driverrel mennek a lassan 10+ éves cuccak, míg win alatt az akkori gépem is elég nekik. Ez a Linux dolog náluk elsősorban egy teszt lehet. Merthogy optimalizálni már nem nagyon kell, a kliens felületén kívül nem láttam grafikai bugokat, akadást.
Az itt felhozott GTA4 meg... A GTA3 mai napig akad minden PC-n, a két hetes gépemet is beleértve.
--
AGA@
Fork portal és az egyik logóm :)

Magának a logikai engine-nek a portolása az esetek 99% -ban annyiban merül ki, hogy lefordítod linux-ra (és ha windows-on odafigyeltek rá, akkor linux alatt sincs több warning mint ott). A maradék 1% szokott lenni a probléma. Ott vannak pl a valve játékok, amik esetében a linux port igazából mindig is létezett (lévén a hlds ami a linuxos dedicate server) ugyan azt a kódbázist használja mint a windows-os kliensek csak a rendering rész marad ki a történetből. A szükséges illesztések amik ahhoz kellenek, hogy linux alatt is elinduljon a játék az jó esetben egy nagyon vékony wrapper réteget jelent (hozz létre egy ablakot, ezt a buffer-t told ki a hangkártyára, sikíts ha megnyomták a gombot, add vissza azt ami ebben a file-ban van, etc.). Magába az engine logikába (és ezt teszi ki a kódbázis hatalmas részét) ritkán szokott platformfüggő kód lenni (ha a szabályokat nézzük, nem is szabad lennie). A valve esetében ami a hosszú portolási időt okozza, az konkrétan nem más, mint hogy járatlan utakat járnak. Pont ezért hallottuk a portolás mellett azt, hogy a v.kártyák drivereinek fejlesztőivel okoskodtak.

Mivel a cryengine már helyből multiplatform (windows directx, xbox (ami szintén directx szerű) és ps3 (ott meg opengl-hez hasonló cuccot használnak)) feltételezhetjük azt, hogy maga az engine már egy ideje opengl kompatibilis (biztos kell rajta valamennyit reszelni, de nem azért mert linux, hanem mert opengl) illetve már helyből megvan az a vékony wrapper réteg ami a bizonyos platformokat jól elmaszkolja az engine elől (pl.: resource manager mögött lévő wrapper).

És a legvégével lőtted pofán a szöget erősen: igen, a linuxnak nincs meghatározó desktop részesedése, ezért nem is éri meg a fejlesztő studióknak azt a pénzt sem, hogy megnézzék mennyi munkába telne. Az egyetlen dolog ami miatt most boldog boldogtalan linuxra is ad ki játékokat, az a valve steambox és semmi más

// Happy debugging, suckers
#define true (rand() > 10)

A galambok, és lepkék nagyon hülyén repülnek, és a víz is... hogy néz ez ki? Nem igaz, hogy 2013-ban nem tudják rendesen megcsinálni az ilyet! :P
--
"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live." John F. Woods

Get dropbox account now!