Linux TEKSTI: OSSI JÄÄSKELÄINEN Trine 2 -pelin windows-version grafiikka on näyttävämpää kuin linux-versiossa. Linuxkin pelittää Linux on muuten hyvä, mutta sillä ei voi pelata. Ei muuten pidä paikkaansa ainakaan aina. 36 MikroPC 8/2013 WWW.MIKROPC.NET
Linux-versiossa on vaatimattomampi grafiikka. Sen huomaa selvimmin vasemmasta alakulmasta. Kumpaakin versiosta pelattaessa käytössä oli sama Intelin uusin yhdysrakenteinen näytönohjain. Sitkeiden ennakkoluulojen mukaan linux on hankala käyttöjärjestelmä, joka ei sovi tavalliseen kotikäyttöön eikä sille saa kunnon pelejä. Ja jos pelejä löytyy, ovat ne jotain vuoden 1987 merkkipohjaisen Nethackin tai miinaharavan kliksuttelun tyylistä. Nethackit ja miinaharavat löytyvät toki linuxille, mutta niiden ohella voi nauttia jopa tuoreehkoista räiskintäpeleistä. Osa suuremmistakin pelitaloista on jo löytänyt linuxin. Ja jos peliä ei linuxille ole saatavissa, siitä on mahdollisesti kehitetty avoimeen lähdekoodiin perustuva ilmainen klooni. Ilmaisklooneja on tehty jo useasta suositusta kaupallisesta pelistä ja pelisarjasta, kuten esimerkiksi Civilizationista tai Guitar Herosta. Ilmaisversiot jäljittelevät alkuperäisten pelien pelimekaniikkaa, mutta ne on yleensä koodattu alusta asti täysin uusiksi. Samoin musiikit, grafiikat ja muut on luotu vapaaehtoisvoimin. Jos peliä ei ole julkaistu linuxille lainkaan, eikä siitä ole harrastelijoiden kehittämää kloonia, voi se silti olla pelattavissa Winesovelluksen avulla. Wine toimii sovelluksen ja käyttöjärjestelmän välissä yhteensopivuuskerroksena. Sen avulla useimmat windowssovellukset toimivat myös linuxissa, tosin hieman hitaammin. Suorituskyvyn kannalta onkin parasta käyttää pelejä, jotka on tehty linuxille. Pelimausta riippuu, kuinka paljon valinnanvaraa on. 3d-räiskijä joutuu tyypillisesti winettämään ja sietämään windowsia heikompaa ruudunpäivitysnopeutta, mutta riippumattomien pikkustudioiden omalaatuisia tai valtavirrasta poikkeavia indie-pelejä harrastava on huomattavasti vahvemmilla. Tänään tarjolla: satoja pelejä Suuren peliyhtiön Valven pelilataamo Steam julkaistiin linuxille tämän vuoden helmikuussa beetatestausvaihe käynnistyi toki jo edellisvuonna. Ja heti helmikuun lopussa Steamilla oli jo lähes yhtä paljon linux-käyttäjiä kuin mac-käyttäjiäkin, vaikka omppukoneiden markkinaosuus on linuxiin verrattuna moninkertainen. Beetavaihe osoitti, että helppokäyttöiselle, yhdellä klikkauksella toimivalle pelien ostoja latauspalvelulle on selvästi kysyntää myös linux-käyttäjien keskuudessa. Tarjontaa ei alkuvaiheessa ollut huikeasti, eikä ole vieläkään. Kirjoitushetkellä Steamista löytyy tasan sata nimikettä linuxille. Sadasta nimikkeestä 79 on pelejä, loput peleihin ladattavia lisäosia ja musiikkia tai ääniraitoja. Suurin osa peleistä on pienten pelitalojen tekemiä, mutta tarjolla on myös joitakin suurempienkin yhtiöiden isompia tuotteita. Valve on näyttänyt mallia muille suuremmille pelitaloille tuomalla linuxille muun muassa suositut Counter-Strike-, Portal- ja Left 4 Dead 2 -pelinsä. Nämä ovat kuitenkin jo muutaman vuoden ikäisiä. Hieman tuoreempaa valikoimaa edustaa esimerkiksi Croteamin julkaisema Serious Sam 3: BFE, joka sekin tosin julkaistiin jo marraskuussa 2011. Aivan uusimpia ja komeimpia räiskintäpelejä linuxille ei siis löydy Steaminkaan valikoimista. WWW.MIKROPC.NET MikroPC 8/2013 37
Linux Pienempien ja omalaatuisempien indiepelien ystävälle löytyy runsaasti uunituoreitakin tuotteita. Pelkästään Steamissa niitä on kymmeniä, mutta Steam ei ole ainoa tai edes paras vaihtoehto indie-faneille. Toinen vastaava pelipalvelu Desura keskittyy nimenomaan indie-peleihin. Kirjoitushetkellä Desuran linux-valikoima oli huomattavasti Steamia laajempi, 299 nimikettä. Humble Indie Bundle -pelipaketit toimivat maksa mitä haluat -periaatteella. Kaikista pc-peleistä on mukana myös linux-versio. Kymmenen yhden hinnalla Pelilataamojen ohella pelejä saa myös linuxjakelujen omista sovelluskaupoista, kuten Ubuntun Sovelluskeskuksesta sekä tietenkin erilaisilta linux-sovelluksia ja -pelejä kerääviltä sivustoilta. Niissä pienten pelikehittäjien on kuitenkin hankala saada tuotteilleen näkyvyyttä. Tässä vaiheessa avuksi tulee Humble Indie Bundle -organisaatio. Humble Indie Bundlen tarkoituksena on myydä pienten pelikehittäjien indie-pelejä hinnalla millä tahansa kirjaimellisesti ja samalla kerätä rahaa hyväntekeväisyyteen. Tyypillisessä Humble Indie Bundle -tarjouksessa myynnissä on esimerkiksi puolenkymmentä yhden tai useamman pienvalmistajan peliä, ja kuluttaja saa itse päättää, paljonko haluaa niistä maksaa. Pihimpi voi saada pelikatraan omakseen esimerkiksi eurolla, mutta halutessaan pienkehittäjiä voi tukea vaikka tuhansilla. Pelipaketeissa on myös omat porkkanansa. Jos maksaa keskimääräistä ostohintaa enemmän, saa yleensä päälle kaupantekijäisiä, esimerkiksi muutaman lisäpelin tai muuta sälää, kuten pelimusiikkipaketteja. Tämä kannustaa ostajia maksamaan enemmän jos viidellä eurolla saa viisi peliä ja kuudella eurolla kahdeksan, niin miksei maksaisi hieman ylimääräistä? Lisäksi ostaja saa päättää, miten rahat jaetaan. Koko maksun voi kohdentaa vaikka yhdelle pelintekijälle, sen voi jakaa eri pelien kesken haluamallaan tavalla, ja rahaa voi antaa myös tippinä Humble Indie Bundlelle heidän palvelustaan. Rahaa voi lahjoittaa myös hyväntekeväisyyteen, kuten nettikansalaisten oikeuksia ajavalle Electric Frontier Foundation -yhdistykselle. Palvelu kehuukin käyttäjien lahjoittaneen jo kymmenen miljoonaa dollaria hyväntekeväisyyteen. Ja huomattavasti enemmän on satanut pelikehittäjien laareihin. Volyymillä voitolliseksi Vaikka yksittäisten pelien keskihinta jää Humble Indie Bundle -seteissä tyypillisesti alle euroon, paketteja kaupataan niin suuria määriä, että suunnaton myyntivolyymi tuo mukavat tai jopa huomattavat tulot pienelle peliyritykselle. Tuoreinta Humble Indie Bundle 8 -pakettia myytiin lähes puoli miljoonaa kappaletta noin kuuden dollarin kappalehintaan tästä riitti jokaiselle mukana olleelle pelitalolle satojen tuhansien dollareiden siivu tippien ja hyväntekeväisyyslahjoitusten jälkeenkin. Tyypillisesti noin kolme neljännestä Humble Indie Bundle -pakettien rahoista tulee windows-käyttäjiltä ja viimeinen neljännes jakautuu tasan mac- ja linux-käyttäjien kesken. Linux-käyttäjät maksavat peleistään tyypillisesti enemmän kuin mac- ja windowskäyttäjät. Monelle pienkustantajalle jo Humble Indie Bundlen suunnattomat myyntimäärät riittävät syyksi tehdä pelistä erillinen linux-versio: Bundleen kun ei pääse mukaan, ellei pelistä ole kopiointisuojaamatonta versiota windowsin ja macin lisäksi myös linuxille. Näin kävi myös suomalaiselle Recoil Games -pelitalolle. Recoilin Rochard-tasohyppelypeli julkaistiin loppuvuodesta 2011 PlayStation 3 -pelikonsolille, windowsille ja macille. Vuotta myöhemmin yhtiö pääsi mukaan Humble Indie Bundle 6 -pakettiin, ja pelistä tehtiin linux-versio juuri tätä tarkoitusta varten. Pelipakettia myytiin 316 000 kappaletta, yli kahden miljoonan dollarin arvosta. Recoilin toimitusjohtajan Jan Achreniuksen mukaan jo yksinään Humble Indie Bundle riitti yhtiölle syyksi linux-version tekemiseen. Meille Linux-version tekeminen oli kannattavaa kahdesta syystä. Peli porttautui linuxille suht vähällä vaivalla ja vain windows-, mac- ja linux-versioiden kanssa pääsee mukaan Humble Indie Bundleen, Achrenius kertoo. Linuxin markkinaosuus on kuitenkin sen verran pieni, että ilman Humble Indie Bundlen mahdollistamia suuria volyymejä linux-pelin kehittäminen ei välttämättä ole taloudellisesti järkevää. Pelin tekeminen vain ja ainoastaan linuxille ei meidän nähdäksemme kannattaisi. Tietenkin tämä riippuu ensisijaisesti projektin budjetista. Osittain samoilla linjoilla on myös toisen suomalaisen indie-pelitalon Frozenbyten toimitusjohtaja Lauri Hyvärinen. Hänen mu- 38 MikroPC 8/2013 WWW.MIKROPC.NET
Linux-käyttäjät maksavat peleistään tyypillisesti enemmän kuin mac- ja windows-käyttäjät. kaansa yhtiön linux-pelien markkinaosuus Steam-pelipalvelun myynneistä on kolme prosenttia, eli selvästi vähemmän kuin Humble Indie Bundlessa. Linux-julkaisumme ovat varmaan omillaan tai hieman voitolla, hän kuitenkin kertoo. Linux-versio syntyi odotettua helpommin Recoilin tavoin myös Frozenbyte on hyötynyt Humble Indie Bundle -yhteistyöstä. Frozenbyte sai jopa kokonaisen oman Humble Frozenbyte Bundle -kampanjansa keväällä 2011. Peruspakettiin kuuluivat yhtiön vanhemmat räiskintäpelit Shadowgrounds, Shadowgrounds: Survivor sekä fantasiatasoloikka Trine. Kolmessa päivässä pakettia myytiin yli puolen miljoonan dollarin arvosta. Yhtiö käytti osuutensa myyntituloista Trine-pelin jatko-osan viimeistelyyn. Trine 2 julkaistiinkin joulukuussa 2011 windowsille ja macille. Jatko-osa tehtiin luonnollisesti myös linuxille, joskin se ilmestyi hieman myöhemmin, maaliskuussa 2012. Linux-version julkaisu muita myöhemmin ei kuitenkaan johtunut siitä, että linuxporttauksen tekeminen olisi osoittautunut hankalaksi. Päinvastoin linux-versio syntyi yhtiön mukaan jopa odotettua helpommin. Teknisesti porttaus oli varsin helppoa, mutta toki meillä oli macin kanssa jonkin verran kokemusta, mikä auttoi, Hyvärinen kertoo. Applen OS X -käyttöjärjestelmä on unixpohjainen, eli käyttöjärjestelmien tekninen samankaltaisuus helpotti Trine 2:n linux-version syntymistä selvästi. Pelin grafiikkamoottorin opengl-renderöijän runko kääntyikin linuxille vain parissa päivässä. Mutta vaikka linuxversion kehitys oli nopeaa, bugien etsintä ja korjaus veivät selvästi enemmän aikaa, Hyvärinen sanoo. Linuxin ongelmana on ekosysteemin monimuotoisuus: pelinkehittäjän, etenkin pienen yrityksen, on mahdotonta testata pelin toimivuutta kaikilla eri jakeluilla, laitteistoilla ja ajureilla. Pelit tyypillisesti testataan toimivaksi suurimmilla linux-jakeluilla, mutta Frozenbyten kokemuksen mukaan ne myös saattavat toimia muissa jakeluissa yhtä hyvin, mutta voivat vaatia manuaalista säätämistä. Linux-pelaajat ovat kuitenkin tottuneet siihen, että konepellin alle pitää kurkotella säännöllisesti. Linuxilla käyttäjät ovat reilusti valveutuneempia kuin muilla alustoilla, jolloin asiakaspalvelumme ei välttämättä tarvitse aina neuvoa, jos hiiri on irronnut usb-portista, Hyvärinen lohkaisee. Historian painolasti erottaa 3d-rajapinnat Suurin osa windowsin peleistä käyttää Microsoftin directx-ohjelmointirajapintaa, joka sisältää muun muassa rajapinnan 3dgrafiikkaan eli direct3d:n. Tällaisia pelejä ei saa suoraan tai helposti käännettyä linuxilla toimiviksi, sillä direct3d:n saa vain windowsille. Tämän takia suurimmasta osasta isojen pelitalojen peleistä ei ole linux-versiota eikä tule. Kääntäminen olisi liian työlästä markkinan kokoon nähden. Moni pelikehittäjä käyttää directx:ää ja direct3d:tä siksi, että myös Microsoftin Xbox 360 -pelikonsolin ohjelmointirajapinta tukee muokattua versiota direct3d:stä. Directx:ää käyttämällä pelistä saa kohtalaisella vaivalla aikaiseksi Xbox- ja windows-versiot. Jos 3d-grafiikat on toteutettu direct3d:n sijaan laitteistoriippumattoman opengl-rajapinnan avulla, pelin konvertoiminen muille käyttöjärjestelmille on helpompaa. Opengl toimii suoraan niin macissa kuin linuxissakin. Pelipalvelu Steamissa on sata nimikettä linuxille, joista 79 pelejä ja loput lähinnä pelien lisäosia. Pelipalvelu Desura keskittyy riippumattomien indie-valmistajien peleihin. Palvelussa on lähes 300 peliä linuxille. WWW.MIKROPC.NET MikroPC 8/2013 39
Linux Suomalaisen Recoil Games -pelitalon Rochard-peli julkaistiin linuxille Humble Indie Bundle 6 -pelipaketissa. Pakettia myytiin yli 300 000 kappaletta. Myös Sonyn PlayStation 3 -pelikonsolin 3drajapinta psgl on opengl-johdannainen. Direct3d ja opengl ovat toiminnoiltaan samankaltaisia, joten syy pelikehittäjien openglinnostuksen puutteeseen ei ole tekninen. Syy on historiallinen. Aikaisemmat opengl-versiot olivat täynnä menneisyyden painolastia, jolloin yhden asian saattoi tehdä usealla eri tavalla eikä kehittäjällä ollut varmaa tietoa siitä, mikä keinoista olisi suorituskykyisin tai paras. Sekavaa opengl-rajapintaa ryhdyttiin kirjoittamaan uusiksi samaan aikaan kun Windows Vista oli ilmestymässä. Ajoitus oli loistava. Direct3d:n 10-versio toimi ainoastaan Vistassa, aiempaan Windows XP:hen sitä ei saanut mitenkään. Koska kuluttajat ja etenkään pelaajat eivät halunneet käyttää Vistaa, pelikehittäjät joutuivat käyttämään directx:n vanhempaa versiota saadakseen riittävän yleisön peleilleen. Opengl:llä oli tällöin hyvä sauma tavoittaa directx, jonka uusinta versiota ei Vistan takia käytetty. Opengl:n 3.0 -versio kuitenkin viivästyi niin paljon, että Vista kävi jo paremmin kaupaksi ja Windows 7:kin oli jo nurkan takana. Jos opengl 3.0 olisi ilmestynyt aikaisemmin, ja olisi tarjonnut Windows XP:ssä ominaisuuksia, joita direct3d:n 9-versio ei voinut tarjota, se olisi voinut nousta hallitsevaan markkinaasemaan. Näin ei kuitenkaan ennättänyt käymään. Direct3d-rajapinta on myös ketterämpi, ja se saa uudet ominaisuudet ensimmäisenä heti, kun grafiikkapiirit ja näytönohjaimet niitä tukevat. Opengl-standardiin uudet ominaisuudet lisätään vasta jälkikäteen, 3d-raudan uudet ominaisuudet rakennetaan olemassa olevan standardin päälle ja lisätään standardin seuraavaan versioon. Lisäksi käyttöjärjestelmä vaikuttaa siihen, mitä opengl-versiota voidaan käyttää. Vaikka esimerkiksi Nvidian uudet näytönohjaimet noudattavat standardin tuoreinta 4.4-versiota ja AMD:n näytönohjaimetkin viimevuotista 4.3:a, linux-puolella joudutaan tyytymään yhä opengl:n versioon 3.1. Käyttöjärjestelmä rajoittaa siis sitä, mitä 3d-ominaisuuksia voidaan käyttää. Grafiikan laatu- tai suorituskykyeroja eri rajapintojen välillä ei pitäisi juurikaan olla, joten loppukäyttäjän eli pelaajan kannalta on periaatteessa sama, käyttääkö peli direct3d:tä vai opengl:ää. Käyttöjärjestelmä ja näytönohjainten ajurit sen sijaan vaikuttavat suorituskykyyn enemmän. Linuxin ajuritilanne on pahimmillaan hankala Pelien windows-versiot pyörivät yleisesti ottaen sutjakammin kuin linux-versiot. Phoronixsivuston kesäkuussa tekemien mittausten perusteella eroa on pelistä riippuen 16 50 prosenttia windowsin eduksi. Myös MikroPC:n omat testit vahvistavat Phoronixin mittaustulokset. Nopeuseroon vaikuttavat käyttöjärjestelmän, 3d-rajapintojen ja käytössä olevan ikkunointiympäristön lisäksi myös näytönohjaimen ajurit. Ajurit vaikuttavat paitsi suorituskykyyn myös kuvanlaatuun. Esimerkiksi Intelin uusimman, kesällä myyntiin tulleen Haswell-sukupolven Core i7 4770K -suorittimen yhdysrakenteinen HD4600-grafiikkapiiri ei tuota kaikissa linuxpeleissä yhtä kaunista kuvaa kuin windowsissa. Frozenbyten Trine 2 -pelissä grafiikka on selvästi latteampaa, kuten tämän artikkelin avauskuvaparista on nähtävissä. Windowsversion kuvankaappauksesta näkee, että grafiikat ovat siinä huomattavasti näyttävämpiä. Frozenbyten Hyvärinen kertookin, että Intelin grafiikkapiirien kanssa on ollut pieniä ongelmia. Ainakin 3000- ja 4000-mallien kanssa meidän on pitänyt tehdä macille ja linuxille pieniä korjauksia grafiikkarenderöintiin. Windows-puolella nuo ovat aina toimineet suoraan. Ongelmat vähenevät pelitarjonnan kasvaessa Intelin yhdysrakenteisia näytönohjainpiirejä käytetään lähinnä sylimikroissa. Pöytätietokoneissa pääosin käytettävät AMD:n ja Nvidian erillisnäytönohjaimet sen sijaan toimivat linuxissakin hyvin, vaikka Nvidia onkin saanut lokaa niskaansa linux-yhteisöltä aina Linus Torvaldsia myöten. Testatessamme asiaa Nvidian näytönohjaimella olikin pieniä ongelmia Ubuntun kanssa. Kaikki Ubuntun sovelluskaupan Nvidiaajuriversiot tarjosivat syyskuussa 2012 julkaistulle Geforce GTX 660 -näytönohjaimelle 40 MikroPC 8/2013 WWW.MIKROPC.NET
vain 640 480 kuvapisteen näyttötarkkuutta. Nvidian verkkosivuilta ladatut, linuxin tekstitilasta hankalasti asennettavat ajurit sen sijaan toimivat ongelmitta. Sekä Intelin että Nvidian grafiikkapiireillä pelit pyörivät linuxissa laiskemmin kuin windowsissa. Recoilin Achrenius kertookin, että pelinkehittäjän kannalta linuxissa saattaa olla esimerkiksi suorituskykyyn liittyviä haasteita, joita muissa käyttöjärjestelmissä ei tule vastaan. Näin kävi AMD:n Radeonnäytönohjainten kohdalla. Meille tuli hieman yllätyksenä, että Applen opengl-ajuri AMD-raudalle poikkeaa linuxin vastaavasta siinä määrin, että linuxilla ajettaessa peli hyytyi samantasoisella raudalla täysin. AMD:ltä saatiin neuvoja ja [Rochardpelissä käytetyn pelimoottorin] Unityn heput onnistuivat kiertämään kyseiset ongelmat pari päivää ennen Rochardin linux-version julkaisua. Ongelmista huolimatta Achrenius suhtautuu kuitenkin luottavaisesti linux-pelien ja -kehityksen tulevaisuuteen. Aivan kaikkia lastentauteja ei ole saatu korjatuksi vieläkään, mutta uskoisin, että ajuri- ja muut ongelmat vähenevät pelitarjonnan kasvaessa. Myös Frozenbyten Hyvärinen suhtautuu Linux pelaajan silmin ITSELLÄNI ON aika vanhaa rautaa, ja pelailen pääosin vanhempia pelejä, kertoo helsinkiläinen 23-vuotias Miro Lehtevä. Linuxia voi sen verran kehua, että miniläppärillä saa pyörimään pelejä, jotka windowsin kanssa tukehduttaisivat koko masiinan. Itse käytän lxdetyöpöytäympäristöä, niin muistia kuluu vain 300 megatavua, mikä auttaa aika paljon heikommilla koneilla. Pelikehittäjien tavoin myös Lehtevä huomauttaa, että näytönohjaimen valmistajalla on linuxissa suurempi merkitys kuin windowsissa. Nvidian ajurit ovat aika kinkkisiä, mutta AMD:llä on ihan hyvä ajurituki linuxissa. Lehtevä vinkkaa myös yhden helpotuskeinon windows-pelien pelaamiseen linuxilla. Kannattaa tutustua skriptikokoelmaan nimeltä PlayOnLinux, hän paljastaa. Ilmainen PlayOnLinux on työkalu, jonka avulla sovelluksia ja pelejä voi helposti asentaa Winessä toimiviksi. Listan PlayOnLinuxin tukemista peleistä näkee osoitteessa playonlinux.com/en/supported_apps-1-0.html positiivisesti linux-pelien jatkokehittelyyn. Jatkossa linuxin tukeminen on aina helpompaa, kun kerran olemme tuen tehneet pelimoottoriimme. Hyvärinen muistaa myös kiittää linuxkäyttäjiä tuesta. Kohtaamamme linux-pelaajat ovat yleensä kiitollisia siitä, että joku jaksaa tehdä natiiviporttauksen ja he myös jaksavat lähettää fanikirjeitä sen puolesta! Helsingin Messukeskus 1. 3.10.2013 IDEOITA, IHMISIÄ, INNOVAATIOITA IDEAS, PEOPLE, INNOVATIONS Teknologia 13 yhdistää aikansa merkittävimmät messut yhdeksi teknologia-alan huipputapahtumaksi. Vuoden tärkein kohtaamispaikka tarjoaa kävijöilleen runsaasti maksuttomia seminaareja ja satoja alan yrityksiä. ETC Forumissa key note -puhujina ovat Pekka Ala-Pietilä, Marko Ahtisaari, Mikko Terho ja Mika Vehviläinen. Lisäksi ohjelmassa mm. Muotoilun Road Show (Design Forum Finland), Teknologia 13 Tervetuloa vuoteen 2020! (Tekes Liideri Liiketoiminta, tuottavuutta ja työniloa ohjelma), Teknologian ja luovuuden seminaari markkinoinnin menestystarinoita. Wärkkäyskisassa 2.10. opiskelijajoukkueet kilpailevat ja innovoivat mikrokontrollerialustalle uusia käyttösovelluksia. Kilpailuun voi ilmoittautua 10.9. mennessä. Lue lisää: eis.fi WWW.MIKROPC.NET MikroPC 8/2013 41 Avoinna 1. 2.10. klo 9 17 ja 3.10. klo 9 16, Ilmoittaudu kävijäksi: www.teknologia13.fi