What kind of game will you create?
This is your chance to work on your own MMO, simulation or educational game! Games Programming is an exchange programme for Software Engineering students who are up for a challenge. You will expand your software engineering skills and learn advanced techniques, such as game algorithms, artificial intelligence and C++. You will use the knowledge acquired in class to create your own game, a game for a real client or to build a prototype game demonstrating new technology.
What's Games Programming like?
From the start of this programme, you'll convey theory into practice and work on a game. Below you can read how this full-time bachelor's level programme of 30 ECTS credits is structured.
-
-
International course (1 ECTS credits)
The student can give a presentation of 30 minutes for a mixed audience about the differences in (inter)cultural aspects between The Netherlands and their home country.
-
Project (10 ECTS credits)
You will spend approximately half of your time on a project. The project will be carried out in a small group of fellow students. You will create a game for which you will use the knowledge acquired in the courses in this programme. You will have a lot of freedom to choose what you want to do:
- Design and implement your own game.
- Create a (serious) game for a real client.
- Do research into new technology and build a prototype game demonstrating the capabilities.
During the project we will organize workshops to get you started. You will also get the opportunity to receive feedback on the playability of your game.
-
Algorithms and artificial intelligence for games (6 ECTS credits)
In this course you will learn about algorithms specifically for games, such as path planning, generating and solving mazes, and solving puzzles with backtracking algorithms. You will also learn how to create an intelligent computer player for board games such as chess, checkers and connect 4. The course also focuses on designing intelligent ‘non-playing characters’ for games and simulations. These characters should be able to move around in a realistic way and make smart decisions based on their environment. To accomplish this, you will learn about steering behaviors, state machines and goal-based decision making, and fuzzy logic.
-
Computer graphics (5 ECTS credits)
Almost every game is played in a graphical two- or three-dimensional space. In this course you will learn how to create these environments. The theoretical (mathematical) basis will be covered, as well as the practical implementation, using OpenGL. With the help of OpenGL you can manipulate objects in space and change the look and feel of them with respect to the material the object is made of.
This course covers the following topics:
- Shaders
- Transformations
- Texture mapping
- 3D modeling
- Theoretical and mathematical background
- CPU vs GPU
-
Programming in C++ (3 ECTS credits)
Nowadays the game industry mostly works with sophisticated game engines, like the CryEngine or the Unreal Engine. To add functionality to the Unreal Engine, you have to program in C++. C++ is a widely-used programming language that is used in the gaming industry as well as in many other industries. C++ is different from programming languages like Java or C#, mainly because you are responsible for your own memory management.
This course covers the following topics:
- Object orientation in C++
- Templates
- STL classes (IO streams, vectors, etc.)
- Pointers & references
- Usage of C++ in a Windows environment
-
Electives modules
Complete your exchange semester or year by taking one or two cross-departmental modules. You will receive ECTS credits when you complete a module successfully.
-
Course catalogue
Want to know more about the exchange programme of Games Programming? Check the course catalogue for more information about matters such as assessment and teaching methods.
-
Requirements and application
You are required to have English-language skills at B2 level and at least 120 ECTS credits in Computer Science or Software Engineering. Experience in C# and/or Java, algorithms and data structures, OO design and programming, UML and design patterns and software engineering practices is also necessary. When you apply for this programme, we will check if your current skills and knowledge match the requirements.
Practical information
Academic Calendar Finance
Housing Visa Facilities
Credits and Grading Partnerships
Learning Agreement
The Learning Agreement is a crucial document for the recognition of a study period abroad. It is an agreement between you, your university and Windesheim. When you decide to do an exchange programme at Windesheim, you have to create a Learning Agreement that includes the respective courses of the exchange programme. Learn more on how to set up the Learning Agreement for your specific exchange programme at Windesheim.
Want to know more?
Questions about studying at Windesheim? Contact the International Office via +31 884699777 or email(opens in new tab).
Any questions about the content of this programme? Get in touch with lecturer Matthieu van Bekkum by email(opens in new tab).