Retrokelaaja on Pelaaja-lehdessä ilmestyvä palsta, jolla kirjoitan kaikenlaista sekavaa videopelimaailman historiasta, usein nykypäivään peilaten. Aiheita voivat olla niin pelien teknologiat, pelikoneiden tekniikka tai ihmiset. Blogissa on luettavana vanhoja Retrokelaaja-tekstejä. Palsta on yksisivuinen, joten 3 500 merkissä täytyy pystyä käsittelemään jokin aihe ainakin jollain tapaa.
Lisätietoja: https://pelaaja.fi/
Juttu ilmestynyt alkujaan Pelaajan numerossa 218.
Ota mikä tahansa retropeli 8-tai 16-bittiseltä aikakaudelta
ja katso, kuinka sen kuva rakentuu. Alustasta riippuen tausta on rakennettu
yhdellä tai useammalla graafisella kerroksella, mutta harva peli koostuu
pelkistä taustagrafiikoista tai staattisista kuvista. Ruudulla on kiva olla
myös liikettä ja vipellystä, joita luotiin spriteillä.
Spriteä voi kutsua vaikkapa pikseleistä rakennetuksi
objektiksi, joka saattoi olla vaikkapa 8 x 8 pikselin kokoinen. Objekti oli
osittain läpinäkyvä, joten se oli mitä mainioin keino pelihahmojen, otusten tai
luotien liikuttamiseen ja animointiin. Ensimmäinen spritejä käyttänyt peli oli
Taiton Basketball (1974).
Toki ruudulle saatiin toimintaa myös ilman spritejä, mutta
grafiikan liikuttaminen ruudulla ei ollut ilmaista. Mitä vanhempi oli pelikone,
sitä niukempi oli tehobudjetti. Muistia, prosessoritehoa ja väyläaikaa oli aina
liian vähän, joten peliohjelmointi oli jatkuvaa taiturointia rajallisten
resurssien äärirajoilla.
Tässä auttoivat hardware-spritet. Laitteiden piirisarjoihin
upotettiin laitteistotason komentoja, joilla sprite-objekteja voitiin liikuttaa
ja animoida helposti, ketterästi ja käytännössä ilmaiseksi.
Softa-spritejä piirrettiin raskaasti kuin käsityönä, pikseli pikseliltä
muistista ruudulle raahaten, mutta hardware-sprite vain nakattiin johonkin
muistipaikkaan, josta se tupsahti ruudulle tarvittaessa. Prosessorin ei
tarvinnut kuin pyörittää muuta peliä.
”Ensimmäinen spritejä käyttänyt peli oli Taiton Basketball (1974).”
Oli spriteillä rajoituksiakin. Eri laitteiden piirisarjat
tukivat eri määrää spritejä, joten ruudulle saatiin vaihtelevasti toimintaa.
Esimerkiksi Commodore 64, NES ja Amiga pystyivät teoriassa liikuttamaan yhtä aikaa
kahdeksaa hardware-spriteä, mutta piru elää yksityiskohdissa. Esimerkiksi NESin
ja C64:n rajoituksia kierrettiin niin, että spritejä piirrettiin enintään
kahdeksan per scanline-taso, jolloin seuraavalla puhtaalla scanlinella voitiin
piirtää taas uudet kahdeksan spriteä. NESin sprite oli 8 x 8 pikseliä, Amigan
ECS-sprite oli 16 pikseliä leveä mutta rajattoman korkea, ja Amigan AGA-sprite
oli 32 tai 64 pikselin levyinen. Sega Mega Drivessa oli jo 80 spriteä, joista
20 mahtui samalle scanlinelle — nyt kelpasi tehdä luotihelvettiräiskintöjä.
Piirisarjoissa oli myös valmiita kikkoja, joilla spritejä voitiin yhdistellä
tai suurentaa, eikä ohjelmoijiakaan kukaan saanut ruotuun, sillä mokomat
keksivät koko ajan uusia tekniikoita spritejen pään menoksi.
Esimerkiksi Super Mario Bros. -pelin Mario on normaalisti
yksi 8 x 16 pikselin kokoinen sprite. Neljästä 8 x 8 -spritestä koostuvan
sienen haukattuaan Mario kuitenkin kasvaa isoksi, jolloin hän koostuukin
neljästä 8 x 16 pikselin spritestä. Taitavaa ja ikimuistoista kikkailua!
Rauta-spritet ovatkin 8ja 16-bittiaikakauden toimintapelien
ytimessä niin hyvässä kuin pahassa. Niillä peleihin saatiin toimintaa, mutta
rajoitukset määrittelivät, millaista se oli. Esimerkiksi NESin kaksinpeleissä
pelihahmot olivat usein enintään 32 pikselin levyisiä. Mutta entä jos koko
sprite-budijetti käytetään ykköspelaajaan ja luodaan kakkospelaaja
taustagrafiikalla tai peilatuilla spriteillä? Ehkä kukaan ei huomaa, jos hahmot
vähän väpättävät hypätessä tai eivät voi katsoa samaan suuntaan.
Hardware-spritejen tarve hiipui pelikoneiden tehon
lisääntymisen ja 3D-grafiikan myötä. Nykykoneissa on niin paljon tehoa ja
vääntöä, ettei edes tuhansien yksittäisten objektien liikuttaminen tunnu
missään. Rautapohjaisia erikoisratkaisuja ei tarvita. On kuitenkin sympaattista
katsella, miten uusretropelit jäljittelevät muinaisten pelikoneiden teknisiä
rajoituksia. Vai olisiko niin, että enemmän hässäkkää ruudulla ei sittenkään
ole aina parempi ratkaisu?
Ei kommentteja:
Lähetä kommentti