Are you looking for a challenge? Would you like to know more about computer graphics, artificial intelligence and advanced algorithms? Would you like to put this knowledge into practice by creating computer games? If you answer yes to any of these questions, Games Programming is for you!
Games programming is a minor for Software Engineering students who are up for a challenge. In this minor you will learn several advanced techniques and expand your software engineering skills. These new techniques and languages can be applied in games, but in other fields as well.
The main language is English and the minor is open to international students. A major part of the time will be spent on the project in which you will be developing a game.
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 basis will be covered, as well as practical implementation, using libraries such as DirectX or OpenGL. With the help of these libraries you can manipulate objects in space and change the look and feel of them with respect to the material the object is made of.
Algorithms and Artificial Intelligence for games
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 four in a row. The course also focuses on designing intelligent ‘non-playing characters’ for games and simulations. These characters should be able to move around in a natural 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.
Programming in C++ ;
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.
Approximately half the time spent in this minor, you will be working 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 minor. 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 on the game. You will also get the opportunity to receive feedback on the playability of your game.
General requirements: two years of bachelor studies and good English-language skills.
You should have experience in:
• Programming in C# and/or Java
• Algorithms and Data Structures
• OO design and programming
• UML and design patterns
• Software engineering practices
• Some basic math
• Soft skills: presentation, communication and teamwork
Exams, assignments and assessments