Adatorientált programozási modellre térnek át a játékfejlesztők

Az új generációs konzolok megjelenése a játékfejlesztők számára mindig izgalmas időszak, hiszen a gépek kiismerése ma már kulcsfontosságú feladattá lépet elő, ami rengeteg kutatást von maga után, így új koncepciók születnek a programozásukra vonatkozóan, ami végeredményben új videojáték-motorokat is jelent.

Az új generáció legnagyobb kihívása, hogy a feldolgozás párhuzamosítására tervezett hardvereket hogyan lehetne hatékonyabban kihasználni. Ez nem csak a konzolok szempontjából lényeges, mivel az ultramobil és a PC-s megoldások is ilyen irányba menetelnek, vagyis a rendelkezésre álló erőforrások befogása minden területen kritikus fontosságú.

A játékfejlesztők szerint az új hardvereken a legjobb eredményeket adatorientált programozási modellel lehet elérni. A koncepció már egy évtizede létezik, de az adatorientált megnevezést csak 2009-ben kapta meg. Az alapötletet az adja, hogy lekövessük azt ahogy a hardver olvassa az adatot, illetve ahogy az eredményt kiírja a memóriába. Ez a megoldás más programozási paradigmával együtt is alkalmazható, előnyeként pedig felhozható, hogy nagymértékben párhuzamosítható a futtatott kód, ami az új hardvereket látva pont jól jön. Ez persze óhatatlanul új algoritmusokat szülhet majd bizonyos problémákra, de az elmúlt évek kutatásai alapján a fejlesztők a párhuzamosítás problémáját már nem látják olyan kritikusnak, mint korábban. Nem egy érintett úgy gondolja, hogy párhuzamosítás nem nehéz, csupán az aktuálisan elfogadott, tulajdonképpen réginek nevezhető programozási paradigmák teszik azzá.

A RedLynx programozója szerint az adatorientált programozási modell már a PlayStation 2-n megjelent, bár ekkor még nem nevezték így. Az efféle megoldás jelentősen csökkenti az elágazásokat és a pointer indirekciókat a kódban, aminek az egyik mellékhatása, hogy az rendkívül jól párhuzamosítható lesz. A Sony régebbi konzolja esetében ez az irány abszolút működött, bár a kutatások elkezdéséhez nagyban hozzájárult az is, hogy másképp nem is igazán lehetett kihasználni a PlayStation 2-ben dolgozó hardvert.

A adatorientált programozási modell másik előnye, hogy sokkal átláthatóbb kódot eredményez. A fejlesztőktől megtudtuk, hogy az új koncepcióra való átállás mindenképp költségesnek tekinthető, de hosszútávon előnyként említhető, hogy a megírt kód karbantartása, illetve kiegészítése nagyságrendekkel egyszerűbbé válik a korábbi programozási paradigmákhoz viszonyítva.

 

Fontos adalék, hogy a programozási paradigmákhoz nem feltétlenül érdemes ragaszkodni. Ha valami régen működött az nem jelenti azt, hogy ma is működik, aminek az oka elsődlegesen az, hogy a memóriák nem fejlődtek olyan mértékben, mint a processzorok. Ennek megfelelően a 80-as években kidolgozott programozási paradigma nem lesz hatékony a mai hardvereknél, mert az elmúlt három évtizedben lényegesen megváltozott a hardverek felépítése. Az új rendszerek kihasználása tehát új programozási paradigmák bevezetését igényli.

Előzmények

Hirdetés