Siirry suoraan sisältöön

Mobile Game Programming (5 op)

Toteutuksen tunnus: HTGP0290-3004

Toteutuksen perustiedot


Ilmoittautumisaika
01.08.2024 - 22.08.2024
Ilmoittautuminen toteutukselle on päättynyt.
Ajoitus
26.08.2024 - 18.12.2024
Toteutus on päättynyt.
Opintopistemäärä
5 op
Lähiosuus
5 op
Toteutustapa
Lähiopetus
Yksikkö
Liiketoimintayksikkö
Toimipiste
Pääkampus
Opetuskielet
englanti
Paikat
20 - 30
Koulutus
Bachelor's Degree Programme in Business Information Technology
Opettajat
Risto Koskenkorva
Lucas Cosson
Zsombor Faragó
Ryhmät
HTG23S1
Bachelor's Degree Programme in Business Information Technology
Opintojakso
HTGP0290

Toteutuksella on 26 opetustapahtumaa joiden yhteenlaskettu kesto on 45 t 30 min.

Aika Aihe Tila
Ti 03.09.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 05.09.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 10.09.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 12.09.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 17.09.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 19.09.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 24.09.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 26.09.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 01.10.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35F306 Oppimistila FF/KOPA Study Abroad/LIKE
To 03.10.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 08.10.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 10.10.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 22.10.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 24.10.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 29.10.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35G206 Oppimistila UTI/TEKN IB/LIKE
To 31.10.2024 klo 16:00 - 17:30
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35C129c Muuntuva oppimistila
Ti 05.11.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 07.11.2024 klo 13:15 - 14:45
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35F205 Oppimistila (aik)
Ti 19.11.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35G206 Oppimistila UTI/TEKN IB/LIKE
To 21.11.2024 klo 13:15 - 14:45
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35F205 Oppimistila (aik)
Ti 26.11.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35G206 Oppimistila UTI/TEKN IB/LIKE
To 28.11.2024 klo 13:15 - 14:45
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35F205 Oppimistila (aik)
Ti 03.12.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B114 Oppimistila LITA/LIKE
To 05.12.2024 klo 13:15 - 14:45
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35F205 Oppimistila (aik)
Ti 10.12.2024 klo 14:45 - 16:45
(2 t 0 min)
Mobile Game Programming HTGP0290-3004 - Lecture
R35B117 Oppimistila Marata/LITA/LIKE
To 12.12.2024 klo 13:15 - 14:45
(1 t 30 min)
Mobile Game Programming HTGP0290-3004 - Demo
R35F205 Oppimistila (aik)
Muutokset varauksiin voivat olla mahdollisia.

Arviointiasteikko

0-5

Sisällön jaksotus

Tässä osiossa kuvataan kurssin aikataulu. Tarkoittaen, mitä tapahtuu joka viikko (rytmitys, ajoitus, viikoittaiset tehtävät, toteutuksen pakolliset osat)?

Kurssi koostuu 5 moduulista:
- Moduulit ovat 3-5 viikkoa pitkiä
- Jokainen moduuli on pakollinen ja sisältää viikoittaista luokassa tapahtuvaa toimintaa ja itsenäistä työtä
- Jokaisen moduulin lopussa on pakollinen moduulitehtävä, joka tarkistaa opiskelijan edistymisen ja moduuliin liittyvän ymmärryksen ja taidot
- Yksityiskohtainen moduulin sisältö tulee olemaan saatavilla oppimisympäristössä

Kurssi alkaa 3 viikon mittaisella moduulilla. Moduuli keskittyy kurssin esittelyyn, työkalujen ja ympäristöjen asettamiseen sekä ensimmäiseen sukeltamiseen kurssin aiheeseen. 1. moduulin loppuun mennessä jokaisen opiskelijan tulee täyttää seuraavat kriteerit:
- Osallistunut kaikkiin kurssin sisäisiin aktiviteetteihin (osallistui selvästi)
- On palauttanut moduulitehtävän, joka on hyväksytty
- Jos 1 tai useampi kriteereistä ei täyty, opiskelija katsotaan ei-aktiiviseksi/kurssilta poistuneeksi (Jamk-kurssin resurssivaatimusten mukaisesti)

Viikkoaikataulu:
~4 tuntia viikossa pakollisiin luokassa tapahtuviin toimintoihin (teoria, testaus ja toteutus demossa) -> Mahdollisesti kahdessa erillisessä istunnossa
~4-6 tuntia viikossa tehtäviin liittyvää itsenäistä työtä (viikko- ja muut), moduulitehtävät, luennoille valmistautuminen ja lopputuotteen tekeminen (kaiken tulee edistää opiskelijan lopputuotetta)

Tämä tarkoittaa, että tälle kurssille kannattaa varata joka viikko ~8-10 tuntia työaikaa!

Kurssi edellyttää myös, että jokaisella opiskelijalla on lopputuote esitettäväksi kurssin loppuun mennessä:
- Lopputuote osoittaa opiskelijan ymmärryksen ja taidot liittyen kurssin aiheisiin
- Kurssi päättyy lopputulosten esittelyyn joulukuussa

Tavoitteet

Objectives (goals):
The objective of this course is to understand the differences between mobile and other game development. The student will learn basics of developing mobile games with game engine middleware and optimize it for a variety of mobile devices.

This course familiarizes you with building and optimizing your games to mobile environments.

Learning outcomes:
After completing this course, you will understand the special requirements for mobile games development and practical technical skills on developing them.

Course competences:
Game production competence
Software engineering competence

Sisältö

Have you ever wanted to make your game run a mobile platform?

Mobile games market has skyrocketed to a massive industry and most of us have played some mobile games. They are often smaller in scope than traditional desktop games and therefore faster to develop. However, mobile games also have their own special needs to take in account in development.

The course will focus on developing mobile games with selected game engine middleware. We will learn to create games of our own and optimize it for a variety of mobile devices.

Oppimateriaalit

Tässä kentässä kuvataan kurssin suorittamiseen vaadittava julkinen oppimateriaali.

Oppimateriaalit:
- Opettajan kirjalliset materiaalit
- Luentomateriaalit (Diat ja oppimisympäristössä)
- Tietokannat (oppimisympäristössä)
- Toteuttamiseen liittyvät materiaalit (oppimisympäristössä)
- Ylimääräistä luettavaa löytyy verkosta ja Books24x7:stä
- Oppimateriaalit löytyvät verkosta ja YouTubesta (tai kurssin tietokannasta)

Käytännöt ja käytetyt työkalut:
- Pelimoottorin kanssa yhteensopiva versionhallintasysteemi (Version Control System - VCS) (esim. Git, GitHub sijaintina)
- Pelimoottori (esim. Unity / Unreal Engine / Godot...)
- Pelimoottoriin liittyvä integroitu kehitysympäristö (IDE) (esim. Visual Studio / JetBrains...)
- Pelimoottoriin liittyvä ohjelmointikieli (esim. C# / C++...)

Joitakin työkaluihin liittyviä julkisia oppimateriaaleja:
- Microsoft. (2024). C# programming guide [Dokumentaatiosivusto]. https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/
- Unity Technologies. (2024a). Unity - Manual [Dokumentaatiosivusto]. https://docs.unity3d.com/Manual/index.html
- Unity Technologies. (2024b). Unity - Scripting API [Application Programming Interface -sivusto]. https://docs.unity3d.com/ScriptReference/index.html

Opetusmenetelmät

Tässä kentässä kuvataan toteutuksessa käytetyt opetus- ja oppimismenetelmät ja miten opiskelijan ohjaus järjestetään.

Sekoitettu malli:
Ensisijainen toimitustapa on toimintojen yhdistelmä luokassa kampuksella ja tietyissä tapauksissa verkossa.
Jos COVID-19 tai muu vastaava tilanne kuitenkin vaatii, oppimista tuetaan verkkotoiminnoilla.

Toiminta syventää oppimista seuraavilla mahdollisilla tavoilla:
- Teoreettiset luennot ja testaus
- Yksilöllistä ja mahdollista ryhmätyötä (toteutus)
- Yksilölliset ja mahdolliset ryhmäharjoitukset, oppimistehtävät (tehtävät) ja reflektointi
- Opastus ohjattujen demojen ja lopputulosten arvioinnin muodossa (apua myös haasteisiin)

Kurssin toiminta voi sisältää myös:
- Projektipohjainen oppiminen
- Käänteinen oppiminen (aiheen oppiminen ennen teorialuentoja)
- Pistokokeet
- Aihekohtainen opetus
- Aihekohtainen tutkimus
- Tietokannan käyttö haasteisiin/ongelmiin/tutoriaaleihin (ongelmapohjainen oppiminen)

Osallistuminen mahdollisiin verkkotoimintoihin:
- Zoomaa käytetään online-toimintoihin
- Vaatii toimivan web-kameran, kuulokkeet ja mikrofonin
- Jos yksi tai useampi seuraavista puuttuu, osallistuminen voidaan hylätä

Tekoälyn (AI) käyttö:
- Tekoälyn ja tekoälyavusteisten työkalujen käyttö on sallittua ja suositeltavaa
- Puhdas kopiointi (plagiointi) on edelleen kiellettyä ja siitä seuraa asianmukaiset rangaistukset

Viralliset viestintäkanavat:
- Joukkueet (ensisijainen) ja sähköposti
- Uutiset (foorumi)
- DiscordApp / WhatsApp / muut viestit ovat henkilökunnan jäseniltä kiellettyjä
- Istunnot voidaan tallentaa ja linkit lisätä työtilaan (tallennuslupa pyydetään aina etukäteen osallistujilta)

Harjoittelu- ja työelämäyhteistyö

Tämä kenttä kuvaa yhteyksiä työelämään ja harjoitteluun.

Kurssilla voi olla vierailevia luennoitsijoita (pelialan asiantuntijoita) ja mahdollisesti retki (virtuaalinen tai fyysinen).

Mahdollinen kurssiprojekti jäljittelee tosielämän projektikokemuksia.

Tenttien ajankohdat ja uusintamahdollisuudet

Tämä kenttä ilmoittaa varsinaisen kokeen päivämäärän ja kellonajan sekä kaikki uusintamahdollisuudet.

Tällä kurssilla ei ole tenttiä! (ellei kurssin vetäjä vaihdu)
- Jokainen opiskelija varaa 30 minuutin arviointiajan, jossa hän esittelee lopputuloksensa (portfolio) varmistaakseen kurssin suorittamiseen vaadittavat taidot ja tiedot
- Arviointi suoritetaan 1-on-1-arviointikeskusteluilla kurssin opettajan/opettajien kanssa
- Arviointipaikkojen varaaminen on mahdollista oppimisalustan kautta

Arvioinnin päivämäärä ja kellonaika:
- Joulukuun puolivälistä tammikuuhun
- Arviointien ja uusintojen tarkat päivämäärät ilmoitetaan kurssin aikana

Toteutuksen valinnaiset suoritustavat

Tässä kentässä kuvataan kurssin vaihtoehtoiset suoritustavat.

Sinulla on oikeus hakea opintosi hyväksilukemista, jos sinulla on aiempaa koulutusta (esim. muualla suoritettua yliopisto-opintoja), joka voidaan hyväksyä parhaillaan suorittamaasi tutkintoon.

Aiemman osaamisen tunnustaminen on mahdollista seuraavilla tavoilla:
- Korkeakouluopintojen hyväksilukeminen (korvaaminen tai sisällyttäminen)
- Muulla tavoin hankitun osaamisen tunnistaminen ja tunnustaminen

Tarkempaa tietoa:
- JAMKin tutkintosäännöt, 17 §
- https://www.jamk.fi/fi/opiskelijoille/tutkinto-opiskelija/aiemman-oppimisen-ja-kokemuksen-tunnustus

Opiskelijan ajankäyttö ja kuormitus

Tässä osiossa kuvataan oppimistehtävät ja niiden suorittamiseen tarvittava aika sekä opiskelijan muut aikataulut.

5 opintopisteen työmäärä on 135 tuntia. Kuorma jakautuu seuraavasti:
- 55 tuntia luokassa tapahtuvaa ohjattua toimintaa
- 80 tuntia itsenäistä työskentelyä

Tämä on suunnilleen seuraavat tuntimäärät:
~55 tuntia: Viikoittainen luokassa tapahtuva toiminta (Luennot, testaus ja toteutus demossa)
~35 tuntia: Tehtävät (viikko- ja muut), moduulitehtävät ja valmistautuminen luennoille
~30 tuntia: Lopputuotteen tekemiseen liittyvä työ
~15 tuntia: Portfolion valmistelu (arviointia varten)

Arviointikriteerit, tyydyttävä (1)

Sufficient (1): You have basic knowledge of mobile game development. You know the steps to set up a development environment for building your game to one mobile platform and to make a simple game to run into it.

Satisfactory (2): You are capable of setting up a development environment for building your game to one mobile platform and are able to make a simple game to run in it. The game scales barely to multiple different mobile devices.

Arviointikriteerit, hyvä (3)

Good (3): You are capable of setting up and analyzing a development environment for building your game to one mobile platform and are able to make a simple game to run in the platform. The game scales nicely to multiple different mobile devices. You are also able to use some of the mobile device specific debugging and profiling tools to analyze your game during the development.

Very Good (4): You are capable of setting up and analyzing a development environment for building your game to one mobile platform and are able to make a complex game to run in the platform. The game scales well to multiple different mobile devices. You are also able to use advanced mobile device specific debugging and profiling tools to analyze and optimize your game during the development. You are skilled with main optimization tricks to make more complex games run on high performance.

Arviointikriteerit, kiitettävä (5)

Excellent (5): You are capable of setting up and analyzing a development environment for building your game to one mobile platform and are able to make a complex game to run in the platform. The game scales easily to multiple different mobile devices. You are also able to use advanced mobile device specific debugging and profiling tools to analyze and optimize your game during the development. You are skilled with main optimization tricks to make more complex games run on high performance and can evaluate different optimization ways. You are also capable of taking advantage of some mobile device specific special functionalities.

Esitietovaatimukset

You need to posses advanced skills in game programming and game engines and therefore this course is not for you are not familiar with modern game development.

Siirry alkuun