Projektityö ja pelikehitys

Samankaltaiset tiedostot
Projektityö ja pelikehitys

T Digitaalisen median työvälineet (3 op) ME-C2300 Verkkojulkaisemisen perusteet (5 op) Mediatekniikan laitos / Informaatioverkostot

Kurssijärjestelyt. ME-C2300 Verkkojulkaisemisen perusteet (5 op) Mari Hirvi Informaatioverkostot / Mediatekniikan laitos

Kurssijärjestelyt. CS-1180 Verkkojulkaisemisen perusteet (5 op) Hanna Hämäläinen Informaatioverkostot / Mediatekniikan laitos

Harjoitustyö 5: 2D-animointi verkkosivuilla (HTML5 Canvas)

Harjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript)

JWT 2016 luento 11. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

Digitaalisen median tekniikat Luento 1: Intro

Harjoitustyö 3: Verkkosivujen toiminnallisuus (JavaScript)

Sokkelon sisältö säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.

Golfsimulaattorin käyttö- ja peliohjeet

Selainpelien pelimoottorit

Antitammirobotti. Antti Meriläinen Martin Pärtel 29. toukokuuta 2009

DNA MOBIILI TV - YLEISET KÄYTTÖOHJEET

A&O:n käyttöohje. 1. Rekisteröityminen ja kurssille ilmoittautuminen. 2. Sisäänkirjautuminen. (Lisää löydät osoitteesta:

KADA (Drupal 7) migraatio uuteen (versioon) webiin

Tervetuloa! CS-C2110 Ohjelmointistudio 1: mediaohjelmointi. Koittakaa löytää istumapaikka!

Tekninen suunnitelma - StatbeatMOBILE

ipad-mainokset Yleisiä ohjeita ja tekniikka lyhyesti

Share toiminto ja Seinä

Liveseuranta (1/9) Suomen Palloliiton Tampereen piiri

Moodle 2.2 pikaohje. 1. Kirjautuminen ja omat kurssit (Työtilat) 1. Mene internet-selaimella osoitteeseen

Kahoot - kyselytyökalu

Sport In The Box Käyttöohje

Weboodi. Katri Laaksonen Oppimisen IT

NETTISIVUOHJE. MUITA OHJEITA käyttäjän lisääminen, mediakirjasto, sähköpostien lisääminen

Pianonsoiton alkeet - opeta koko luokka soittamaan 2 kappaletta kahdeksassa viikossa.

Johdatus edistyneeseen web-kehitykseen. Juuso Lappalainen

Käyttöohjeet. Näppäimet. Kello tila. Pelitila

Löydä Helsinki Tietoa kaupungin palveluista lukutaidottomille helsinkiläisille

Jypelin käyttöohjeet» Ruutukentän luominen

Kahoot! Kirjautuminen palveluun. Sinikka Leivonen

Digitaalisen median tekniikat. Esteettömyys ja käytettävyys

KODU. Lumijoen peruskoulu

Tietokannan luominen:

HUOM! Latauskaapelia ei saa kytkeä laitteeseen ennen hyväksytyn maksuprosessin suorittamista! Kirjaudu

Digitaalisen median tekniikat. Esteettömyys ja käytettävyys Harri Laine 1

Johdatus tutkimustyöhön. Harjoitus 9: Kenraaliharjoitus (Tiistain harkkaryhmä)

Kodu Ohjeet. Jos päivityksiä ei löydy niin ohjelma alkaa latautumaan normaalisti.

Swiss timer kellokonsoli käyttöohje

PIKAKÄYTTÖOHJE V S&A Matintupa

Selkosanakirja sdfghjklöäzxcvbnmqwertyuiopåasdfghjklöäzxcvbnmq. Tietokoneet. wertyuiopåasdfghjklöäzxcvbnmqwertyuiopåasdfghjk 1.4.

Anna Siikaniemi. BITSBOARD sovelluksen käyttöopas

WWW-sivujen Verkkosivujen ulkoasu (CSS)

Alkuun HTML5 peliohjelmoinnissa

35C00250 Hankintojen johtaminen Kurssin esittely

18 Komponentit, ulkoasu ja visuaalisuus. Materiaalit CC-BY 4.0 Mikko Lampi

Liveseuranta (1/9) Suomen Palloliiton Tampereen piiri

Autotallin ovi - Tehtävänanto

sivu 1 Verkkopäätteen muuttaminen Anvian uuteen tekniikkaan Ohje käy seuraaviin verkkopäätteisiin

Tietotekniikan laitoksen uusi linja

SmartShip lisäosa WooCommerce alustalle (c) Webbisivut.org


Käyttöohje: LAPIO latauspalvelu

Suvi Junes Tampereen yliopisto / tietohallinto 2013

Sulava. Markku Suominen. Puhelin: Käyttöönotto Käyttö

Laskuharjoitus 9, tehtävä 6

Osa 7: Hahmojen ohjelmointi ja hienosäätö

Asiakas ja tavoite. Tekninen toteutus

Aiheenvalinta ilmoitetaan MyCoursesin keskustelualueella (ei saman yrityksen tarkastelua lähes samasta näkökulmasta) viimeistään tiistaina 27.2.

BEYOND: Two Souls BEYOND Touch Sovellus

A2: Vuorovaikutus ja viestintä

Sisällysluettelo. 1. Johdanto

A35C00250 Hankintojen johtaminen Kurssin esittely

Westiekerho.fi päätoiminnallisuudet

AMIS-ohjelman käyttöohjeet

WWW-sivujen Verkkosivujen ulkoasu (CSS)

PHZ.fi. Kaupunginosat-palvelun Joomla! hallinnoijan opas


Visualisointi informaatioverkostojen Opintoneuvoja Teemu Meronen (päivitys Janne Käen visualisoinnin pohjalta)

KÄYTTÖOHJE / Ver 1.0 / Huhtikuu WordPress KÄYTTÖOHJE Sotkamo 2016

Kontrollilaitteet. Arsenaali

Konsolin näytössä näkyy käytettäessä ohjaavia viestejä, joita kannattaa tämän ohjeen lisäksi seurata.

T Ohjelmistojen määrittely- ja suunnittelumenetelmät

KOTISIVUJEN KÄYTTÖOHJE ULVILAN PESÄ-VEIKOT RY

Projektinhallintaa paikkatiedon avulla

PC-LAITTEEN TESTAAMINEN

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

Jos suljet vahingossa koejärjestelmän, voit käynnistää sen uudelleen näytön yläosasta:

Pelinkehittäjäkoulutus. Jouni Huotari

Kurssin suorittaminen. Merkkituotteet strategisessa markkinoinnissa KTT Eiren Tuusjärvi

JS-kehitys - yleiskuvaus. TIEA255 - Juho Vepsäläinen

Venekilpailu! Esteiden väistely ja hahmon ohjaaminen

T Harjoitustyöluento

Tikon Web-sovellukset

OHJEET TASO-TULOSPALVELUJÄRJESTELMÄN KÄYTTÖÖN JÄRJESTELMÄN KÄYTTÖ ENNEN OTTELUA JA OTTELUN AIKANA

TAMPEREEN TEKNILLINEN YLIOPISTO KÄYTTÖOHJE TIETOVARASTON KUUTIOT

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:

Tieto- ja viestintätekniikan opinnot Jyväskylän yliopistossa

ETAPPI ry JOOMLA 2.5 Mediapaja. Artikkeleiden hallinta ja julkaisu

Oppitunti 2.1:n käytön aloittaminen. Opettajan opas ipadin Oppitunti-appiin

Digitaalisen median tekniikat. Luento 3: CSS

Ohjelmoinnin peruskurssi Y1

2. luento. CS-C2110 Ohjelmointistudio 1: mediaohjelmointi Syksy 2016 [Studio 1] Antti Tolppanen, Sanna Suoranta, Lauri Savioja

Pikaohje Judoliiton jäsenmaksuosuuden nippuostamiseen seurakäyttäjille.

TIES406 Tietotekniikan opintojen aktivointi

Sivuston muokkaus WordPressin kanssa

Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö

Suvi Junes/Pauliina Munter Tampereen yliopisto / tietohallinto 2014

Transkriptio:

Projektityö ja pelikehitys Selainohjelmointi (JavaScript) T-111.1100 Digitaalisen median työvälineet (3 op) ME-C2300 Verkkojulkaisemisen perusteet (5 op) Pinja Hokkanen DI Markku Laine Mediatekniikanlaitos laitos / Informaatioverkostot Mediatekniikan 12. huhtikuuta 2016

http://code.google.com/p/quake2-gwt-port/

Luennon jälkeen tiedän enemmän projektityöhön käytettävistä teknologioista ja olen valmis aloittamaan sen tekemisen

Pelisuunnittelusta

Pelisuunnittelun osa-alueet Pelattavuuden suunnittelu Tarinan suunnittelu Kenttien/pelimaailman suunnittelu Käyttöliittymäsuunnittelu Ansaintamallin suunnittelu (mukailtu Miikka Junnilan VJP-luentokalvoista syksyltä 2014)

Valmiin pelin tunnusmerkit Peli on ymmärrettävä Pelaajan on helppo ymmärtää pelin logiikka Peli on mahdollista pelata alusta loppuun Kannattaa kokeilla testikäyttäjillä! Sisäisesti valmis Ei bugeja, umpikujia jne. Hyvin tasapainotettu Eri pelistrategiat mahdollisia Vaikeusaste ei ole liian helppo/vaikea, mutta progressiivinen Peli on reilu (mukailtu Miikka Junnilan VJP-luentokalvoista syksyltä 2014)

2D-pelikehitys verkkosivuilla

Grafiikkakirjastot ja HTML5pelimoottorit (engl. graphics libraries and HTML5 game engines)

Motivaatio Tarjoavat muun muassa Korkeantason 2D ja/tai 3D piirto API:n Animointisilmukan / pelisilmukan Spritet ja niiden liikemekaniikan Fysiikkamoottorin Törmäystestit Resurssien (esim. kuvat ja äänet) esilatauksen ja hallinnan Monikanavaäänet Tapahtumien (esim. hiiri ja näppäimistö) kuuntelun Ohjelmointimallin (entiteetti/komponentti ja/tai olio) Tekoälyn Moniselaintuen

http://www.phaser.io

http://www.createjs.com/#!/easeljs

http://melonjs.org/

http://mrdoob.github.io/three.js/

http://html5gameengine.com/

Projektitöitä syksyn kurssilta

Flappy Running Norsu Mayhem, 2015 (http://dime.tml.hut.fi/~hamalaa8/project/)

Cadillac (2012)

19 Eero Helske, 2015 (http://dime.tml.hut.fi/~ehelske/project/game.html)

20

21 Neero Lius & Otso Repo, 2015 (http://dime.tml.hut.fi/~liusv1/harjoitus6/game.html )

Golfpelin rakenne Tehty phaser-pelikirjastolla golf_game.html 1 spritesheet-tiedosto 11 javascript-tiedostoa 1 kpl apuluokkia (player.js) 7 kpl phaser state-tiedostoja 3 kpl plugineita (phaser, box2d, jquery) 12 kuvaa

Golfpelin rakenne - spritesheet

Golfpelin rakenne - phaser statetiedostot Phaser-kirjastolla tehdyt pelit rakentuvat ns. State-tiedostoista, joilla määritellään pelin eri vaiheet. Stateja voi olla esimerkiksi boot (ladataan pelissä käytettävät kuvat yms.), menu (näytetään valikko), game (näytetään peli). Statet ovat itsenäisiä koodin osia, joiden välillä voidaan liikkua helposti. Esimerkiksi statelogiikkaa voisi käyttää seuraavalla tavalla: kun valikossa painetaan play-nappulaa, käynnistä gamestate. Kun pelissä pelaajan elämät vähenee nollaan, käynnistä menu-state. 25

Golfpelin rakenne - phaser statetiedostot state_boot.js Ladataan kaikki pelissä tarvittavat kuvat ja äänet. Määritellään canvaksen koko ja muut perusasetukset. Kun kaikki on valmista, siirrytään menu-stateen. 26

Golfpelin rakenne - päävalikko state_menu.js Näytetään pelaajalle valikko, jossa on play, scores ja how to nappulat. Kun pelaaja painaa nappuloita, siirrytään kutakin nappulaa vastaavaan stateen. 27

Golfpelin rakenne - alavalikot State_howto.js, state_scores.js, state_gameover.js Näytetään pelaajalle ohjeet, highscores-lista ja game over -näkymä. Kukin state sisältää nappulan, jolla voidaan siirtyä takaisin päävalikkoon. 28

Golfpelin rakenne - peli state_game.js, state_level_cleared.js Kaikki itse peliin liittyvä logiikka. Kun pelaaja on kerännyt kaikki tähdet, siirrytään level cleared stateen. Siellä olevaa nappulaa painettaessa käynnistetään game state uudestaan, jossa ladataan seuraava taso. Kun peli loppuu, siirrytään game over stateen. Kartat ladataan. json tiedostoista. Koko pelilogiikka mahtuu 280 riviin koodia. 29

Parinmuodostus

Parinmuodostus Projektityö tehdään pareittain, ja parit muodostetaan Viestintä 2 - kurssin ryhmien sisällä. Neljän hengen ryhmästä tulee siis kaksi paria, viiden hengen ryhmästä yksi kolmen hengen ryhmä ja yksi pari, kolmen hengen ryhmä toteuttaa projektityön yhdessä. Muista ilmoittaa projektityön palautuksen yhteydessä parisi nimi!

Yhteenveto ja tehtävänanto

Yhteenveto Verkkosivujen rakenteen, ulkoasun ja toiminnallisuuden toteuttamiseen on olemassa vaihtoehtoisia ja/tai täydentäviä tapoja HTML:n, CSS:n ja JavaScript:n rinnalle. JavaScript API:t pyrkivät tuomaan natiivisovellusten toiminnallisuudet Webiin. Uusia API:ja ilmestyy jatkuvasti. Selaintuki on vielä osittain puutteellista. Grafiikkakirjastot ja HTML5-pelimoottorit helpottavat pelien toteuttamista ja HTML5 <canvas>:n kanssa työskentelyä. Toteutuksien suhteen on runsaasti valinnanvaraa.

Tehtävänanto Toteuttakaa verkkosivustolle peli (projektityö), joka tehdään kurssilla opetettujen asiakaspään webteknologioiden avulla. Projektityö tehdään pareittain tai 3 hengen ryhmissä. Projektityön on liityttävä Viestintä 2 -kurssin ryhmänne teemaan, muuten aihe on vapaa. Projektityön vaatimukset sekä tarkempi tehtävänanto löytyvät kurssin MyCourses-sivuilta Harjoitustyöt-osiosta. Palauttakaa projektityö kurssin Dime-verkkopalvelimelle viimeistään torstaina 10.5.2015 klo 23.59 mennessä.

Ensi viikon harjoitus: Edistynyt verkkosivujen kehitys Todellisuudessa verkkosivuja kehitetään monien eri asiakaspään kirjastojen avulla, ja niissä hyödynnetään usein myös palvelinpään logiikkaa (tietokantoja, sisäänkirjautumista jne.). Ensi viikon harjoitustyön yhteydessä käydään läpi hieman edistyneempien frontend-tekniikoiden käyttöä, kuten Angular.js ja Scss. Osallistuminen on täysin vapaaehtoista, mutta lyhyt intro edistyneempään web-kehitykseen on varmasti hyödyllinen kurssin aikana web-kehityksestä kiinnostuneille. 35

Linkkejä Resursseja pelien kehitykseen http://letsmakegames.org/resources/art-assets-for-gamedevelopers/ http://content.gpwiki.org/index.php/game_content_resources http://www.pixelprospector.com/the-big-list-of-royalty-freegraphics/ http://freesound.org/ http://www.soundjay.com/ http://www.mangatutorials.com/forum/showthread.php?742-theultimate-indie-game-developer-resource-list

KIITOS! pinja.hokkanen@aalto.fi