Pelimoottori

videopelejä suorittava ohjelma

Pelimoottori (engl. game engine, usein vain engine) on videopelin ohjelmistokehys, jonka päälle pelinkehittäjät voivat rakentaa pelejä pelikonsoleille, mobiililaitteille ja henkilökohtaisille tietokoneille. Tavallisesti pelimoottori sisältää muun muassa renderöintimoottorin (engl. image generator) 2D- ja 3D-grafiikalle, fysiikkamoottorin tai törmäyksen tunnistuksen, äänet, komentosarjakielen, animoinnin, tekoälyn ja lokalisointituen.

Ajopelin luontia Blenderillä.

Historia muokkaa

 
Pelimoottoreiden kehitys ja haarautuminen havainnollistettuna id Softwaren Quake enginen avulla.

1980-luvun puolivälissä pelien kehitys muuttui. Enää ei luotu jokaista peliä tyhjästä, vaan käytettiin työkaluja, joita voitiin käyttää uudelleen useiden pelien tekoon, mutta usein samaan lajityyppiin. Esimerkiksi SCUMM oli käytössä useissa seikkailupeleissä 20 vuoden ajan ja vuosien saatossa myös SCUMMiin tehtiin päivityksiä. SCUMM ei ollut julkisesti saatavilla, mutta pelinkehitysohjelmia kuten Shoot-'Em-Up Construction Kit julkaistiin yleiseen myyntiin. Termi pelimoottori yleistyi 1990-luvulla Doomin myötä, jonka tekniikkaan viitattiin nimellä Doom Engine.[1]

Komentokonsoli muokkaa

Eräät pelimoottorit sisältävät komentokonsolin (pelimoottorin sisäisen komentorivin), jolla voi tehdä konfigurointitehtäviä.[2]

Middleware muokkaa

Pelimoottoreita ja niihin liittyvää teknologiaa kutsutaan usein middleware-termillä.[3] Middleware-ohjelmistoa on muutakin käytössä kuten fysiikkamoottoriin (Havok), renderöintioptimointiin (ks. Umbra SDK) ja audiokäsittelyyn (ks. FMOD, Wwise). Muita usein käytettyjä erikoistuneita middleware-ohjelmia ovat kasvillisuuden ohjelmointiin ja animointiin tarkoitettu SpeedTree. CRI on useita ominaisuuksia sisältävä laajalti käytetty middleware.[4]

Lisensointi muokkaa

Pelimoottorien lisensointi on yleistä. Lisensointi antaa uusille pelinkehittäjille mahdollisuuden luoda uusia pelejä nopeammin, kun ohjelmarunkoa ei tarvitse rakentaa alusta asti.

Useat yritykset ovat keskittyneet vain ja ainoastaan kehittämään lisensoitavia pelimoottoreita.

Komponentit muokkaa

Pelimoottori voi jakaantua käyttökohteen ja -tarpeen mukaan useisiin komponetteihin tai moduuleihin.

Tyypillisiä osa-alueita modernin pelimoottorin toteutuksessa ovat:

  • pääsovellus
  • grafiikkarenderöinti
  • fysiikkamallinnus
  • tekoäly
  • audio
  • pelilaitekäsittely
  • verkkoyhteydet

Pelimoottoreita muokkaa

Pelimoottoreita on kehitetty useita ja kehitetään edelleen. Luettelot pelimoottoreista ovat jatkuvasti muuttuvaa tietoa.

Lähteet muokkaa

  1. Marcus Toftedahl: Localization Tools in General Purpose Game Engines: A Systematic Mapping Study (PDF) diva-portal.org. 2021. doi:10.1155/2021/9979657. Viitattu 16.12.2023. (englanniksi)
  2. Developer Console developer.valvesoftware.com. Viitattu 2.12.2021. (englanniksi)
  3. Gamebase USA Announces Support for Wii U™ as an Authorized Middleware Developer gamebryo.com. Viitattu 19.3.2017.
  4. http://www.mobygames.com/game-group/middleware-cri

Aiheesta muualla muokkaa

Tämä videopeleihin liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.