Lataa esitys
Esittely latautuu. Ole hyvä ja odota
1
Peliohjelmointia Jypelillä
Tero Jäntti Tomi Karppinen Vesa Lappalainen Jonne Itkonen Jyväskylän yliopisto/Tietotekniikan laitos Helsinki
2
Taustaa Kesällä 2009 tietotekniikan laitos järjesti kaksi peliohjelmointikurssia yläasteikäisille Kursseja varten kehitettiin kirjasto 2D-peleille nimeltä Jypeli Hauskaa oli
4
Motivaatio kurssin pitämiseen
Luonnontieteet eivät suosiossa koulussa Mikä kiinnostaa nuoria? PELAAMINEN! 1. Motivointi fysiikan käsitteisiin: syy-seuraussuhteet ja kappaleiden väliset riippuvuudet fysiikan käsitteitä, kuten Maan vetovoima, kitka sekä voimista aiheutuvat liike- ja tasapainoilmiöt, erilaiset liikkeet ja voimien vaikutukset liikkeeseen kappaleen massa ja sen vaikutukset tasainen ja tasaisesti kiihtyvä liike suureita, kuten aika, matka, nopeus, kiihtyvyys ja voima
5
2. Motivointi matematiikan käsitteisiin:
funktion käsite lukuparin esittäminen koordinaatistossa yksinkertaisten funktioiden tulkitseminen ja niiden kuvaajien piirtäminen koordinaatistoon geometriasta suorat, suurennokset, pienennökset ja mittakaava sekä erilaiset muodot, esim. kolmiot, nelikulmiot, monikulmiot ja ympyrä yhtälöt ja niiden ratkaiseminen todennäköisyys ja satunnaisuus loogisia elementtejä ja totuusarvoja tapausten yhtäläisyyksiä ja säännönmukaisuuksia ongelmanratkaisua vektorit ja niiden esittäminen lukuparina tai napakoordinaatistossa asteet ja radiaanit
6
Kurssin ohjelma Alkuinfo
7
Toteutuksesta Toteutettu C#-kielellä käyttäen XNA-kirjastoa
Toimii vain Windowsilla Pelit pyörii myös XBox 360:llä
8
Esimerkkejä Malli– ja esimerkkiohjelmia: Ekan kurssin top-3:
Tankkipeli 3, Avaruuslentely, Biljardi, Tasohyppelypeli Ekan kurssin top-3: Hyppija.exe, Last Tanks.exe, Rampege.exe Tokan kurssin top-3: Palikkatesti.exe, Square Defence beta.exe, SuuriKynttila.exe
11
Nettisivut https://trac.cc.jyu.fi/projects/npo09
12
Yleisiä periaatteita Jypeli on sovelluskehys (framework)
”Dont call us, we call you” Kirjasto ajaa pelisilmukkaa, hoitaa piirtämisen, yms… Ohjelmoija määrittelee mitä tapahtuu kun peli käynnistyy, kappaleet törmää, …
13
Fysiikka Jypeli sisältää fysiikkamoottorin (Physics2D.NET)
Olioilla massa, nopeus, … Törmäyksille voi asettaa tapahtumia (mitä tapahtuu kun ammus osuu pelaajaan…)
14
Valmiita luokkia (1/3) RealTimeGame – pyörittää peliä
PhysicsGame – fysiikka mukana GameObject – olio pelissä PhysicsObject – tottelee fysiikan lakeja
15
Valmiita luokkia (2/3) Level – sisältää oliot, taustan, ym.
Meter<T> - voi laskea vaikka autoja ValueDisplay – näyttää laskurin arvon Weapon – kantaluokka aseille Tank – panssarivaunu HighScoreList
16
Valmiita luokkia (3/3) ScreenObject – näyttökoordinaatteja käyttäviä olioita (ikkunat, mittarit ym.) RTGWindow – kantaluokka käyttöliittymän ikkunoille, ScreenObjectin jälkeläinen AlertWindow – yksinkertainen viesti-ikkuna ListSelectionWindow – listavalintaikkuna yms.
17
Komponentti-esimerkkejä
Valikot Lentokone Laskuvarjo Strategiapelipohja/hahmo (hiiriohjattava) Minigolf-radan osat (kalteva pinta)
18
Esimerkkipeli Aletaan koodaamaan… Saa ehdottaa ominaisuuksia!
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.