Game ProgrammingLaajuus (5 cr)
Course unit code: HG00CI44
General information
- Credits
- 5 cr
- Teaching language
- English
- Responsible person
- Risto Koskenkorva
Objective
The objective of the course (objectives):
Have you ever wanted to make a game do your own bidding?
Game development has never before been easier to start with as it currently is, with all the tools freely available. However, to make a game function the way you want with those tools, you should still have a basic understanding of the technological functionality perspective of the game. The technical side includes programming or scripting.
Now is your chance to put your logical skills into use and start doing games that actually do something! Let's get logical!
Course competences:
- Game Production: Student can produce game programming related content for a game project and can work with the tools in meaningful and systematic way. Student can program with and engine-specific language and understand the role of assets. Student can produce value for a game project while working in a game technology related specialist role.
- Learning to Learn: Also takes responsibility for group learning and sharing what has been learned.
The learning objectives of the course (outcomes):
After the course you understand what game functionalities are, and what tools you can use to create them. You also know how they can be used in unison with a game engine in accordance to game technology theory, programming concepts and principles to develop game prototypes (and games). You can apply your knowledge to creating technical building blocks for a game prototype (or a game).
Content
Some of the tools you will familiarise yourself with in this course include a game engine editor, a Integrated Development Environment (IDE) and a version control system. The game technology theory, programming principles and concepts include a game engine Application Programming Interface (API) and Object-Oriented Programming (OOP). You will use at least some features of the game engine specific programming language, the API, and the OOP to implement source code for simple functionalities (or even game mechanics) for a game prototype. You will have experience on the game prototyping process through the creation and usage of the technical building blocks in the game engine.
Qualifications
No previous game programming experience prequisites. Basic competence with a game engine is expected. Sufficient (minimal) programming competence (programming language overall, basic structures, syntax, functions/methods) is expected. Skills with other related tools, like version control system and IDE, are useful.
Assessment criteria, satisfactory (1)
Sufficient (1): You have basic knowledge of the programming language and related core development tools. You understand how to create simple game functionalities and mechanics from scratch with the programming language and the game engine, taking advantage of classes, methods, variables and other basic functionality.
Satisfactory (2): You have basic understanding of most of the concepts of Object-Oriented Programming. You are capable of using simple game functionalities and mechanics with the programming language and the game engine, taking advantage of classes, methods, variables and other basic functionality.
Assessment criteria, good (3)
Good (3): You have basic understanding of most of the concepts of Object-Oriented Programming and can analyse ready scripts and functionalities. You are capable of modifying ready or creating your own simple game functionalities and mechanics with the programming language and the game engine.
Very Good (4): You are capable with main concepts of Object-Oriented Programming. You are capable of creating game functionalities and mechanics from scratch with the programming language and the game engine. You can take advantage of a bit more advanced topics such as events. You have done cooperation with other game developer(s) in your project(s).
Assessment criteria, excellent (5)
Excellent (5): You are very capable with main concepts of Object-Oriented Programming and can critically evaluate ready functionalities. You can use your skills to develop your own game functionalities and mechanics. You are capable of creating complex game functionalities and mechanics with the programming language and the game engine. You have done cooperation with other game developer(s) in your project(s).
Further information
Suitable for anyone who is interested in the game creation process from the technological point of view.