luk seminaari 2006 antti rantala n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Pelisuunnittelumallit PowerPoint Presentation
Download Presentation
Pelisuunnittelumallit

Loading in 2 Seconds...

play fullscreen
1 / 28

Pelisuunnittelumallit - PowerPoint PPT Presentation


  • 86 Views
  • Uploaded on

LuK-Seminaari 2006 Antti Rantala. Pelisuunnittelumallit. Mitä suunnittelumallit ovat?. Ratkaisuja tietyissä ympäristöissä usein esiintyviin ongelmiin. Kuvailevat ongelman, sen kontekstin, sekä strategian jolla ongelma voidaan ratkaista. Tarjoavat sanaston jonka avulla suunnittelijat voivat:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Pelisuunnittelumallit' - briar


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
mit suunnittelumallit ovat
Mitä suunnittelumallit ovat?
  • Ratkaisuja tietyissä ympäristöissä usein esiintyviin ongelmiin.
  • Kuvailevat ongelman, sen kontekstin, sekä strategian jolla ongelma voidaan ratkaista.
  • Tarjoavat sanaston jonka avulla suunnittelijat voivat:
    • Kommunikoida tehokkaasti kokemuksesta riippumatta muiden suunnittelijoiden kanssa, sekä myös muiden alojen edustajien kanssa (esim. ohjelmoijat)
    • Dokumentoida omat oivalluksensa
    • Analysoida niin omia kuin muidenkin suunnitelmia
ep luuloja suunnittelumalleista
Epäluuloja suunnittelumalleista
  • Suunnittelumalli on tarkka ratkaisu tiettyyn ongelmaan tietyssä kontekstissa
  • Suunnittelumallit ovat vain ammattislangia, sääntöjä, ohjelmointikikkoja, tietorakenteita...
  • Tarvitaan erityiset työkalut, jotta suunnittelumalleista olisi hyötyä
  • Suunnittelumallit takaavat uudelleenkäytettävän ohjelmiston, korkeamman tuottavuuden, maailmanrauhan...
  • Ei ole todisteita siitä, että suunnittelumallit hyödyttäisivät ketään
suunnittelumallien historiaa
Suunnittelumallien historiaa

Malleja on käytetty historiassa mm. psykologian, antropologian ja arkkitehtuurin aloilla.

  • Psykologian historiassa Carl Jung esitteli termin “arkkityyppi”. Arkkityypit ovat merkkejä, jotka kertovat ihmisen mielestä.
  • Gestaltin psykologiassa psykologit käyttivät malleja terapiansa lähtökohtana
  • Antropologian historiassa Ruth Benedict tutki ihmisten käyttäytymistä mallien avulla.
suunnittelumallien historiaa1
Suunnittelumallien historiaa

Arkkitehti Christopher Alexander kirjoitti kirjan The Timeless way of Building (1979)

  • Olennainen dokumentti ohjelmistosuunnittelun historiassa
  • Määrittelee ongelmanratkaisutekniikan jota voidaan käyttää lukemattomissa ohjelmistosuunnittelun konteksteissa
  • Arkkitehtuuri ja ohjelmistosuunnittelu hyvin samanlaisia
    • Perustuvat olemassa olevien järjestelmien tutkimiseen ja mallien etsimiseen niistä
suunnittelumallien historiaa2
Suunnittelumallien historiaa
  • “Jos luulet löytäneesi mallin, sinun on pystyttävä piirtämään se”

Ohjelmistosuunnittelun alalla Gang of Four (eli Erich Gamma, Richard Helm, Ralph Johnson ja John Vlissides) tutkivat mallien käyttöä ohjelmistosuunnittelussa ja kirjoittivat aiheesta kirjan Design Patterns: Elements of Reusable Object-Oriented Software

  • Käsite ohjelmistosuunnittelijoiden piirissä
ohjelmistosuunnittelumalli vs pelisuunnittelumalli
Ohjelmistosuunnittelumalli vs. Pelisuunnittelumalli
  • Ohjelmistosuunnittelumallit ratkaisevat suunnitteluongelmia ohjelmointitasolla
  • Pelisuunnittelumallit keskittyvät pelimekaniikan ja -maailman ongelmiin
  • Peliohjelmoinnissa käytetään luonnollisesti ohjelmistosuunnittelumalleja ja niiden muunnelmia
pelisuunnittelumallin rakenne
Pelisuunnittelumallin rakenne

Suunnittelumallit sisältävät tyypillisesti seuraavat elementit:

1. Nimi

2. Ongelman kuvaus

3. Ratkaisu

4. Seuraukset

5. Esimerkit

pelisuunnittelumallien rakenne
Pelisuunnittelumallien rakenne
  • Nimi
    • Suunnittelumallin nimeäminen lisää suunnittelussa käytettävää sanastoa ja auttaa suunnittelemaan korkeammalla abstraktiotasolla
    • Nimen tulee olla helposti muistettava ja mielikuvia herättävä
  • Ongelman kuvaus
    • Kuvaus ongelmasta ja kontekstista jossa se esiintyy
    • Kuvauksesta käy ilmi tavoite johon halutaan päästä, sekä esteet joita kohdataan matkalla tavoitteeseen
pelisuunnittelumallien rakenne1
Pelisuunnittelumallien rakenne
  • Ratkaisu
    • Yleisen tason kuvaus entiteettien ja mekanismien jär-jestelystä
    • Ei tarkka kaava tai konkreettinen toteutus, vaan abs-trakti rakenne, joka kuvaa joukon mahdollisia ratkai-suja
  • Seuraukset
    • Jokaisella mallilla on seurauksensa.
    • Suunnittelijan tulee ymmärtää eri ratkaisujen haitat ja hyödyt ja verrata niitä keskenään ennen lopullisen pää-töksen tekemistä
  • Esimerkit
pelisuunnittelumalleja
Pelisuunnittelumalleja
  • Edustaja (Proxy)
  • Odotuksenmukainen seuraus (Predictable consequence)
  • Kivi-paperi-sakset (Paper-rock-scissors)
  • Etuoikeus (Privileged move)
  • Suodatin (Filter)
  • Syötti (Weenie)
  • Syöttiketju (Weenie chain)
edustaja proxy
Edustaja (Proxy)

Ongelma: On mahdotonta tai ei toivottavaa, että pelitoiminto kohdistuu suoraan kohteeseen.

Ratkaisu: Esitellään toinen objekti, jota käytetään edustajana varsinaiselle kohteelle. Edustaja voi-daan sijoittaa ja sitä voidaan liikutella itsenäisesti riippumatta varsinaisesta kohteesta/kohteista. Varsinaiselle objektille asetetut rajoitukset eivät välttämättä päde edustajaan. Samalle kohdeobjektille voidaan luoda useampia edustajia.

edustaja proxy1
Edustaja (Proxy)

Seuraukset: Jos pelaajan oletetaan hyödyntävän edustajan ja varsinaisen kohteen välillä olevaa yhteyttä, siitä on viestittävä pelaajalle.

Esimerkkejä: Napit/kytkimet/vivut jotka avaavat ovia tai käynnistävät/sammuttavat koneita tms. ovat usein sijoiteltu eri paikkaan kuin varsinainen kohde. Tällaisissa tapauksissa suunnittelija on halunnut erottaa laukaisimen kohteesta saadakseen aikaan kehittyneempää päänvaivaa pelaajalle.

odotuksenmukainen seuraus predictable consequence
Odotuksenmukainen seuraus (Predictable consequence)

Ongelma: Pelaajaa on rangaistava seurauksena teh-dyistä virheistä. Rangaistuksen on oltava riippu-vainen tehdyn virheen laadusta.

Ratkaisu: Pelissä voi suorittaa vaan sellaisia toimin-toja, joiden seuraus on pelaajan pääteltävissä. Va-litaan pelimekanismi, joka viestittää odotuksenmu-kaisesta käytöksestä visuaalisella ulkoasullaan luottaen pelaajan tietämykseen (tietämys voi olla peräisin reaalimaailmasta, muista peleistä, ko. pelin aikaisemmista tapahtumista, jne.).

odotuksenmukainen seuraus predictable consequence1
Odotuksenmukainen seuraus(Predictable consequence)

Visuaalisen ulkoasun yhtenäisyyttä ei pidä rikkoa, eli objektien, jotka käyttäytyvät samalla tavalla, myös näyttävät samalta.

Seuraus: Ei voida toteuttaa yllätyksiä. Juonessa saattaa olla kohtia, joista on mahdotonta päästä ohi ottamatta jonkinlaista riskiä. Mikäli pelaaja pelaa siten, ettei ota tietoisesti riskejä, hän ei ikinä löydä oikeaa ratkaisua em. tilanteessa.

odotuksenmukainen seuraus predictable consequence2
Odotuksenmukainen seuraus(Predictable consequence)

Esimerkkejä: Monissa peleissä on tynnyreitä tai laa-tikoita jotka on merkitty jollakin räjähdettä tarkoit-tavalla symbolilla ja näin ollen räjähtävät ampu-essa, tulipallot, liekit ja laava polttavat, vesi hukut-taa jne. Vastaesimerkkinä monista peleistä löytyy myös paljon sellaisia tilanteita, joissa on mahdo-tonta ennustaa tulevaa, kuten “Paina minua” -teks-tillä varustettu nappi, joka laukaisee ansan tms.

kivi paperi sakset rock paper scissors
Kivi-paperi-sakset (Rock-paper-scissors)

Ongelma: Miten välttää ns. huippustrategioita, joiden avulla pelaajan on liian helppo voittaa.

Ratkaisu: Laaditaan epätransitiivisia suhteita vaihto-ehtojoukolle, aivan kuten kivi-paperi-sakset -pelissä

Seuraus: Pelaaja ei enää löydä yksittäistä strategiaa, joka on optimaalinen kaikissa tilanteessa ja ympä-ristöissä. Pelaajan on kerrattava vanhoja päätöksi-ään, verrattava niitä nykyiseen tilanteeseen ja ym-päristöön ja laadittava näiden perusteella uusi pa-ranneltu strategia.

kivi paperi sakset paper rock scissors
Kivi-paperi-sakset(Paper-rock-scissors)

Esimerkkejä: Monissa strategiapeleissä pelaajan yksiköiden kesken esiintyy kivi-paperi-sakset -voimasuhde, eli yksi yksikkö voittaa toisen mutta häviää kolmannelle jne. Quakessa aseiden ja vi-hollisten välillä on myös em. kaltaisia voimasuh-teita. Eri aseet tehoavat eri tavalla eri vihollisiin, jolloin pelaajan ei ole mahdollista käyttää vain yhtä tiettyä asetta joka paikassa.

etuoikeus privileged move
Etuoikeus (Privileged move)

Ongelma: Joskus jonkin pelientiteetin ei voida antaa vaikuttaa muihin entiteetteihin tai muut entiteetit eivät voi vaikuttaa siihen.

Ratkaisu: Luodaan erilaisia liikkumistapoja ja alueita, jotka erottelevat ja suojaavat pelin entiteet-tejä. Nämä liikkumistavat ja alueet eivät ole saa-vutettavissa, ellei niihin pyrkivällä entiteetillä ole ko. Etuoikeutta. Kun pelimaailmassa on tällaisia Etuoikeuksia, maailmaan muodostuu eräänlaisia turvapaikkoja ja -reittejä Etuoikeutetuille entitee-teille.

etuoikeus privileged move1
Etuoikeus (Privileged move)

Seuraukset: Riippuen toteutustavasta, Etuoikeus voi olla hyvin kovakourainen tapa tarjota suojaa eri entiteeteille. Huonosti suunnitellut tai toteutetut Etuoikeudet saattavat ärsyttää pelaajaa.

Esimerkkejä: DOOMissa eräät viholliset voivat liik-kua happoaltaissa, mutta pelaajan astuessa happo-altaaseen hahmo menettää terveyttään ja lopulta kuolee. Half-Lifessä ja Halossa vihollissotilaita pudotellaan lentävistä ajoneuvoista, mutta tämä kuljetusmekanismi ei ole pelaajan käytettävissä.

etuoikeus privileged move2
Etuoikeus (Privileged move)

Pelissä Thief pelaaja voi ennen varsinaisen pelin alkua lennellä pelialueen yllä ja näin tutustua peli-alueeseen. Monissa peleissä vedessä olevat vihol-liset voivat liikkua ja toimia vain vedessä (esim. Quake ja Half-Life). Monissa peleissä lentävät vastustajat voivat suorittaa pelaajalle mahdottomia liikkeitä ja näin ne saavuttavat etulyöntiaseman pelaajaan nähden.

suodatin filter
Suodatin (Filter)

Ongelma: Jos pelaajan annetaan luoda uusia peli-objekteja, ja/tai uusia objektikombinaatioita, ja/tai liikutella pelin objekteja umpimähkään, tuloksena saatavan pelin kompleksisuus saattaa käydä liian ylivoimaiseksi suunnittelijoille.

Ratkaisu: Rajoitetaan paikallista kompleksisuutta suodattimin, esimerkiksi luomalla pienempiä ja helpommin hallittavia, selkeästi määriteltyjä alijoukkoja.

suodatin filter1
Suodatin (Filter)

Seurauksia: Pelaajan vapautta joudutaan rajoitta-maan implisiittisyyden tai selkeyden takia. Vahin-gossa tapahtuva suodatus saattaa johtaa pelin ti-lanteisiin, joita pelaaja ei voi ratkaista. Ideaali-tilanteessa suodatus on silminnähtävä ja selkeä osa pelin maailmaa. Suodatin voi olla tarkoituksenmu-kainen seuraus tai Etuoikeuden tahaton sivuvai-kutus.

suodatin filter2
Suodatin (Filter)

Esimerkkejä: DroidWorks -pelin post mortemista: “Kenttäsuunnittelijamme eivät voi koskaan tietää, minkälainen droidi milloinkin saapuu heidän suun-nittelemiinsa ympäristöihin. Esimerkiksi jyrkkä mäki, kuilu, kapea kanjoni ja matala ovi asettavat rajoitteita sille, minkälaiset droidit pääsevät niissä kulkemaan. Suunnittelijat käyttivät ympäristön ominaisuuksia rajoittamaan pelin kompleksi-suutta.”

sy tti weenie
Syötti (Weenie)

Ongelma: Pelaaja saattaa menettää suuntavaistonsa pelimaailman kehitykseen nähden. Tämä ongelma esiintyy erityisesti peleissä, jossa pelaajan tekemät ratkaisut vaikuttavat juoneen.

Ratkaisu: Pelin täytyy antaa pelaajalle selkeitä vinkkejä, jotka osoittavat pelaajalle minne mennä ja mitä tehdä.

Seuraus: Pelaaja tulee ajan myötä riippuvaiseksi pe-lin tarjoamasta opastuksesta ja pelaaja hämmentyy mikäli opastus yhtäkkiä loppuu. (kts. syöttiketju)

sy tti weenie1
Syötti (Weenie)

Esimerkkejä: Syöttimalli perustuu Walt Disneyn esittämään ideaan siitä, miten massiivisissa 3D-ympäristöissä (Disneyland) vierailijaa on johdateltava samalla tavalla, kuin koiran omistaja kouluttaa koiraansa, eli pitämällä koiran kuonon edessä sopivaa syöttiä ja sen avulla johdattaa koira haluamaansa paikkaan. Tapoja antaa pelaajalle vinkkejä tulevasta ovat mm. Ei-pelaajahahmojen antamat vinkit tai lyhyet kamera-ajot, jotka koh-distavat pelaajan mielenkiinnon esim. lähellä aukeavaan oveen.

sy ttiketju weenie chain
Syöttiketju (Weenie chain)

Ongelma: Pelaaja menettää suuntavaistonsa, kun oikeaa suuntaa näyttävät elementit yllättäen loppuvat. Ongelma esiintyy erityisesti peleissä, joissa on suuria epälineaarisia ympäristöjä, eli peli ei etene “kuin putkessa”, vaan pelaaja voi joutua palaamaan jo vierailemiinsa paikkoihin juonen edetessä.

Ratkaisu: Luodaan katkeamaton ketju Syöteistä, eli pelaajaa johdatellaan koko matkan pelin alusta loppuun.

sy ttiketju weenie chain1
Syöttiketju (Weenie chain)

Seuraukset: Syöttiketjua käyttämällä ei välttämättä voida aikaansaada monihaaraista juonta, jossa pelaaja voisi itse päättää mahdollisista vaihtoehdoista haluamansa. Syöttiketju saattaa siis tehdä pelistä putkimaisen.

Esimerkkejä: Super Mario 64:ssä ja Munch's Oddyseessä pelialueella on runsaasti ohjekylttejä ja hahmoja, jotka antavat pelaajalle erilaisia vinkkejä aina pelin kontrolleista tehtävien suorittamiseen asti.