2. Sisend ja tagasiside

Mängija sisendit loetakse sisendseadmetelt, nt. hiir, klaviatuur, eri kontrollerid. Igale sisendile vastab mängus mingisugune tegevus, olgu selleks tegelase või kaamera liigutamine, ekraanide avamine, sulgemine või seal olevate elementidega interakteerumine või kiirkäskude andmine.

controllers

Mänge on väga palju ja nende sisendi olemus võib erineda tohutult mängust, kuid oluline on teha mänguprogrammis kasutajale mängureeglitega interakteerumine võimalikult mugavaks. Sealjuures saab rakendada kasutajaliidese ja kasutajakogemuse (UI/UX) disaini, mille ülesanne on välja töötada eri meetodid, kuidas mängija saab mängu juhtida.

Kui tuua näitena lihtsamad mängud, nagu näiteks Pong, kus mängija liigutada on üks ristkülik, mille vastu saab põrgata simuleeritud pall, on võimalik mängijal vaid üks tegevus: liigutada oma "reketit". Reketit saab liigutada üles ja alla, mille jaoks on eraldatud tavaliselt kaks eri iseloomuga sisendit, milleks võivad olla näiteks klaviatuuril üles ja alla nupp, W ja S nupp või kontrolleri peal D-pad'il üles/alla nupud või siis analoogpulk, mis annab analoogsisendi vastavalt sellele kui palju mängija surub seda üles või alla.

pong

Pong'i puhul on tegemist liikumisega vaid ühes dimensioonis. Kui Pong'i reeglistikku muuta nii, et mängija saaks liikuda ka oma reketiga vasakule/paremale, liigutakse kahes dimensioonis. Kui seda veelgi laiendada ja lisada sügavus dimensioonina, oleks tegu juba kolmemõõtmelise mänguga, kus mängija saab liikuda kolme eri telje peal ning iga telje jaoks on vaja lahendada (tavaliselt) kaks sisendit: liikumine positiivses ning ka negatiivses suunas. St. oletades, et meie teljed on markeeritud kui X (horisontaalsus), Y (vertikaalsus) ja Z (sügavus), et mängija saaks liikuda ühe nende telje peal, on vaja sellele omistada mingi sisend, mis liigutab mängija kontrollitud mänguelementi mängijale soovitud suunas.

Liikumise puhul on mängijale tegevuse tagasiside üldjuhul silmaga nähtav. Kui mängija aktiveerib mingisuguse liikumissisendi, nende kontrolli all olev mänguelement, näiteks Pong'i reket, liigub teatud suunas. Seda saame nimetada otseseks tagasisideks. Kui võtta natuke keerulisem näide, näiteks First Person Shooter'ite (FPS) maailmast tuntud mäng Doom, on meil lisaks liikumisele võimalik ka tulistada relvast kuule välja. Jällegi, kui mängija aktiveerib sisendi, mis tulistab kuuli, peaks mäng näitama, et kuul tekib ning liigub iseseisvalt mängija sisendist olenemata edasi, algses sihitud suunas. Mängureeglite kohaselt saame ära määrata kui kaugele kuul võib liikuda, mis juhul see mängumaailmast kaduma peaks (näiteks kokkupõrkel takistuse või vaenlasega) ja mis juhtub, kui see põrkab millegagi kokku.

doom

Mängudes pidevalt muutuva ja mängija poolt manipuleeritava maailma kirjeldamiseks kasutatakse sageli terminit "Game State" ehk mängu olek. Mängu olek on nimelt mänguprogrammi poolt käideldava simulatsiooni hetkeseis. Mängu olek saab oma alguse mängu alustades ning oma lõpu mängu lõpetades. Oluline on ka mängu oleku puhul täheldada, et seda üldjuhul peaks olema võimalik salvestada, et mängija saaks teha mängust pausi, mänguprogramm kinni panna ning hilisemal hetkel uuesti see mänguprogrammi sisse laadida ning taastada eelnev olek. See pole küll kohustuslik osa mängudest, kuid on üldjuhul hea tava see mingil määral lisada. Osad mängud lihtsalt salvestavad mängusessiooni lõppoleku näiteks selleks, et talletada mängija poolt kogutud sessiooni jooksul kogutud punktid või muud mängija tegevusi kirjeldavaid parameetreid, näiteks mitmenda tasemeni ta on jõudnud.

game_state

Selleks, et neid parameetreid ka mängijale näidata kasutatakse eelkõige visuaalset tagasisidet. Näiteks: kui tulistada vaenlast, siis lõpuks tema elupunktid saavad otsa ja ta "hävib", näidates mängijale animatsiooni, et see on juhtunud ning mille eest mängija saab näiteks punkte. Samas neid punkte, mis on mängija kogunud, näidatakse kasutajaliideses.