Skip to main content

Mobile Game Programming (5 cr)

Code: HTGP0290-3003

General information


Enrollment

01.08.2023 - 24.08.2023

Timing

28.08.2023 - 19.12.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Face-to-face

Unit

School of Business

Campus

Main Campus

Teaching languages

  • English

Seats

20 - 41

Degree programmes

  • Bachelor's Degree Programme in Business Information Technology

Teachers

  • Risto Koskenkorva
  • Eerik Kukkonen

Groups

  • HTG22S1
    Bachelor's Degree Programme in Business Information Technology
  • ZJA24KI
    Avoin amk, tiko
  • 27.11.2023 08:00 - 09:30, Mobile Game Programming HTGP0290-3003 - Lecture
  • 28.11.2023 10:45 - 12:15, Mobile Game Programming HTGP0290-3003 - Demo
  • 04.12.2023 08:00 - 09:30, Mobile Game Programming HTGP0290-3003 - Lecture
  • 05.12.2023 10:45 - 12:15, Mobile Game Programming HTGP0290-3003 - Demo
  • 11.12.2023 08:00 - 09:30, Mobile Game Programming HTGP0290-3003 - Lecture
  • 12.12.2023 10:45 - 12:15, Mobile Game Programming HTGP0290-3003 - Demo
  • 18.12.2023 08:00 - 09:30, Mobile Game Programming HTGP0290-3003 - Lecture
  • 19.12.2023 10:45 - 12:15, Mobile Game Programming HTGP0290-3003 - Demo

Objectives

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

Content

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.

Learning materials and recommended literature

Public learning materials:
- Unity (mobile) Platform development manual: https://docs.unity3d.com/Manual/PlatformSpecific.html
- Unity API: https://docs.unity3d.com/ScriptReference/index.html
- Unity manual: https://docs.unity3d.com/Manual/index.html
- C# programming guide: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/

Other learning material:
- Databases in the learning environment
- Materials in the learning environment

Practicalities and used tools:
- C# (or C++) as the programming language
- Visual Studio (or similar) as the IDE
- Unity (or Unreal Engine) as the Game Engine
- Git as the Version Control System (GitHub as the location)
- Extra reading materials can be found from the web and Books24x7
- Tutorial materials can be found from the web and YouTube
- Zoom is used for lectures
- Teams and email are used for official communication
- DiscordApp / WhatsApp / other comms are used for questions, answers and discussions

Teaching methods

The primary mode of delivery is a combination of in-class activities on campus and online lectures. The lectures will be recorded to support opportunities for 24/7 learning. The in-class activities deepen the learning in the forms of tutorials, individual and group works, reflection and guidance. However, if the COVID-19 or other similar situation requires the learning will be supported by on-line tutorials and activities.

A blended model:
- The course can also contain project based learning, learning tasks, knowledge tests, topic specific focus teaching, database use for challenges/problems/tutorials (problem based learning)

Practical training and working life connections

The course might have visiting lecturers and possibly an excursion (virtual or physical).

Exam dates and retake possibilities

There is no exam on this course. Every student reserves a 30 min evaluation slot where they will show the task and project results (portfolio) to verify the skills and knowledge required to pass the course. The evaluation will be carried out with 1-on-1 conversations together with the course teacher. The reservation of the evaluation slots will be made possible through the learning platform.

During the last 2-3 weeks after classes will be reserved for the 1-on-1 evaluations. Students can use this time to make games in voluntary game projects.

Alternative completion methods

You have the right to apply for recognition of your studies if you have prior learning (e.g. university studies completed elsewhere) that can be accredited towards the degree you are currently completing.

The recognition of prior learning is possible in three primary ways: accreditation (replacement or inclusion), recognition of informal learning and studification. More precise info: JAMK Degree Regulations, section 17.

Student workload

One credit corresponds to an average of 27 hours of work, which means that the load of five credits is approximately 135 hours. The load is distributed roughly the following way:
- Lectures: ~26h
- In-class activities (demos): ~26h
- Tasks (weekly and other), module projects and lecture preparations: ~53h
- End task / portfolio preparations: ~20h

Content scheduling

General scheduling:
- 2 hours per week for mandatory lectures (in-class or virtual)
- 2 hours per week for mandatory in-class activities (demo lectures)

Further information for students

Avoin amk 2
EduFutura 3

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

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.

Evaluation criteria, good (3-4)

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.

Evaluation criteria, excellent (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.

Prerequisites

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.